CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
【经验总结】不能实施并行处理的情况 浅谈并行编程中的任务分解模式
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  MS-SQL Server >  基础类

将一个子查询转换成外部连接

楼主tadpole_m()2002-08-13 09:23:35 在 MS-SQL Server / 基础类 提问

在网上看到这样一个提问:  
   
  我想把这段代码用OUTER   JOIN来表示,谁知道应该怎么做?    
   
  SELECT   SupplierName    
  FROM   Supplier    
  WHERE   Supplier.SupplierID   NOT   IN   (SELECT   SupplierID   FROM   Order);    
   
  我在MSSQL SERVER中看联机帮助,说大部分的子查询都可以转换成外部连接。想问一下这样转换有没有意义?  
  然后我改了一下,但是总觉不对。大家看一下:  
  SELECT   SupplierName   FROM   supplier  
  left   outer   Join   order   on   Supplier.SupplierID<>Order.SupplierId  
  或者  
  SELECT   SupplierName   FROM   supplier  
  left   outer   Join   order   on   Supplier.SupplierID   NOT   IN   Order.SupplierId  
   
  还想问一下这个NOT IN和IN的问题,它应该是个逻辑运算符,是不是涉及集合的?我能象上面那样用NOT IN吗?似乎没看到这样的用法。  
   
  嘻嘻,也许问题很简单,但是,还是希望不吝指教。  
  问题点数:20、回复次数:5Top

1 楼icevi(按钮工厂)回复于 2002-08-13 09:48:51 得分 5

SELECT   SupplierName    
  FROM   Supplier   left   outer   join   order   on   Supplier.SupplierID   =Order.supplierid  
  where   Order.supplierid   is   null  
  Top

2 楼tj_dns(愉快的登山者)回复于 2002-08-13 09:50:53 得分 5

这个语句没有必要改为外部连接,用连接实现这种情况比较复杂。  
  连接一般是用来查询有关联的几个表的数据项,你这种情况是选择无关联的数据,所以现在的写法是比较合理的。Top

3 楼icevi(按钮工厂)回复于 2002-08-13 10:02:12 得分 5

不一样的,效率不一样,一般来说,用in效率低些,没办法进行优化,用连接可以按所建的索引做优化的。Top

4 楼mtdata(不写代码的日子)回复于 2002-08-13 10:03:54 得分 5

试了试,好像没有办法Top

5 楼tadpole_m()回复于 2002-08-13 10:21:57 得分 0

谢谢各位的回答,但是,为什么没人指出我的错误呢?  
  Top

相关问题

  • 关于查询转换的问题
  • 查询记录 转换 问题 ???
  • 关于类型转换查询问题?
  • SQL中的连接查询....
  • 连接查询的思考!
  • 外连接查询问题
  • 关于SQL 连接 查询
  • 连接查询问题
  • SQL Server的连接查询???
  • 连接表查询问题

关键词

  • 查询
  • 转换
  • 连接
  • supplierid
  • suppliername
  • supplier
  • outer join
  • order
  • select

得分解答快速导航

  • 帖主:tadpole_m
  • icevi
  • tj_dns
  • icevi
  • mtdata

相关链接

  • SQL Server类图书

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
惹火投票。。火热进行中...
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
CSDN网站24小时值班电话:13552009689
Copyright © 2000-2009, CSDN.NET, All Rights Reserved
GongshangLogo