ANY,SOME,ALL 在SQL语句中的区别?

时间:2021-03-05 15:46:54

用 ANY、SOME 或 ALL 修改的比较运算符(视频下载) (全部书籍)
可以用 ALL 或 ANY 关键字修改引入子查询的比较运算符。SOME 是 SQL-92 标准的 ANY 的等效物。

以 > 比较运算符为例,>ALL 表示大于每一个值;换句话说,大于最大值。例如,>ALL (1, 2, 3) 表示大于 3。>ANY 表示至少大于一个值,也就是大于最小值。因此 >ANY (1, 2, 3) 表示大于 1。

select * from register where age > any (SELECT age FROM student WHERE (age > 20) AND (age <30));

select * from register where age > some (SELECT age FROM student WHERE (age > 20) AND (age <30));

详情请见:http://www.mark-to-win.com/index.html?content=Mydb/DBUrl.html&chapter=Mydb/DBIntroduction_web.html#ANYSomeAlldiff