当前位置: 代码迷 >> Sql Server >> SQL中IN和EXISTS用法的区别啊该如何解决
  详细解决方案

SQL中IN和EXISTS用法的区别啊该如何解决

热度:77   发布时间:2016-04-27 14:51:15.0
SQL中IN和EXISTS用法的区别啊?
请问2者具体有什么区别啊?要给出具体的例子和结果(说法已经晓得,但是没例子和结果还不是很明白,麻烦了),
不要说扫描方法不一样了,这个已经明白了~!!
麻烦各位大大了~!

------解决方案--------------------
SQL code
比较使用 EXISTS 和 IN 的查询 本示例所示查询查找由位于以字母 B 开头的城市中的任一出版商出版的书名: USE pubs GO SELECT title FROM titles WHERE EXISTS     (SELECT *     FROM publishers     WHERE pub_id = titles.pub_id     AND city LIKE \'B%\') GO -- Or, using IN: USE pubs GO SELECT title FROM titles WHERE pub_id IN     (SELECT pub_id     FROM publishers     WHERE city LIKE \'B%\') GO E. 使用 NOT EXISTS NOT EXISTS 的作用与 EXISTS 正相反。如果子查询没有返回行,则满足 NOT EXISTS 中的 WHERE 子句。本示例查找不出版商业书籍的出版商的名称: USE pubs GO SELECT pub_name FROM publishers WHERE NOT EXISTS     (SELECT *     FROM titles     WHERE pub_id = publishers.pub_id     AND type = \'business\') ORDER BY pub_name GO
------解决方案--------------------
select DISTINCT MD001 from BOMMD WHERE NOT EXISTS (SELECT MC001 FROM BOMMC where BOMMC.MC001 = BOMMD.MD001)
  相关解决方案