SQL中的ALL,ANY,SOME的用法

Posted feiquan

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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)

 

以上是关于SQL中的ALL,ANY,SOME的用法的主要内容,如果未能解决你的问题,请参考以下文章

MySQL中 any,some,all 的用法

sql中any和all的区别?

SQL:我们需要 ANY/SOME 和 ALL 关键字吗?

mysql之any,some all(zz)

MySQL - AnyAll 用法

与 Oracle SQL 中的 ALL 等 Compoperator 的 NULL 行为