SQL中的ALL,ANY,SOME的用法

准备两个表:

--T1(2,3)
--T2(1,2,3,4)

--ALL,ANY,SOME 的子查询
-- >ALL 父查询中的结果集大于子查询中每一个结果集中的值,则为真
SELECT * FROM T2 WHERE N>ALL (SELECT N FROM T1)

 

-- >ANY,SOME 父查询中的结果集大于子查询中任意一个结果集中的值,则为真
SELECT * FROM T2 WHERE N>ANY(SELECT N FROM T1)
SELECT * FROM T2 WHERE N>SOME(SELECT N FROM T1)

 

-- =ANY 与子查询IN相同
SELECT * FROM T2 WHERE N=ANY (SELECT N FROM T1)
SELECT * FROM T2 WHERE N IN (SELECT N FROM T1)

 

-- <>ANY 与NOT IN
--<>ANY
--OR作用 父查询中的结果集不等于子查询中的a或者b或者c,则为真
SELECT * FROM T2 WHERE N <>ANY(SELECT * FROM T1)

 


--NOT IN
--AND作用 父查询中的结果集不等于子查询中任意一个结果集中的值,则为真
SELECT * FROM T2 WHERE N NOT IN(SELECT * FROM T1)

 

posted @ 2018-03-26 21:40  feiquan  阅读(51059)  评论(0编辑  收藏  举报
如果是此文是转载文章,本人会附上转载链接,此篇文章的版权归原创作者所属,如果侵权请与我联系,我会删除此文。

若没有标明转载链接,此篇文章属于本人的原创文章,其版权所属:
作者:feiquan
出处:http://www.cnblogs.com/feiquan/
版权声明:本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
大家写文都不容易,请尊重劳动成果~ 这里谢谢大家啦(*/ω\*)