文章目录
一、any,some,all介绍二、使用情况1.all逻辑运算符2.any和some运算符提示:以下是本篇文章正文内容,下面案例可供参考
一、any,some,all介绍
any,some,all是Mysql当中的逻辑运算符,作用是将子查询返回的单列值的集合与查询的单个值作比较。any,all,some前面需跟比较运算符(>, >=, <, <=, !=, =,但是这里的单个使用=号的情况只有子集的数据是单个值或者子集数据全部相同才能符合情况,如果子集是多个不同的就不满足,根据实际情况使用)
二、使用情况
学生的成绩以及班级情况:
1.all逻辑运算符
例如:
select …from …where c > all(…)
表示c列中的值必须要大于子查询集的每一个值,即必须要大于子查询集的最大值;如果是小于号即小于子查询集的最小值。同理可以推出其它的比较运算符的情况。
示例:
查询成绩大于2班最高成绩的所有学生信息:
select * from students where score > all(select score from students where sclass=2);
结果:
2.any和some运算符
any和some作用是一样的。
例如:
select…from…where c > any(…) 或者 select …from …where c > some(…)
表示c列中的值要大于子查询中的任意一个值,即必须要大于子查询集中的最小值。同理可以推出其它的比较运算符的情况。
示例: 查询3班成绩至少大于2班成绩的学生信息:
select * from students where sclass=3 and score > any(select score from students where sclass=2);
select * from students where sclass=3 and score > some(select score from students where sclass=2);
结果: