本文主要介绍了SQL server 中的any和all运算符,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
一,SQL Server Any 运算符
Any 是一个逻辑运算符 ,它将值与子查询返回的一组进行比较。any运算符必须要结合比较运算符使用,
>,>=,<,<=,=,<>开头,后面就是子查询
where 比较者 >any(子查询)
如果子查询不返回如何行,则条件计算结果为false,就是返回空的意思,进行不了比较。
如果子查询不返回零行,下面说明了any运算符与每个比较运算符一起使用的含义:
条件 | 含义 |
c = ANY (…) | c列中的值必须与集合中的一个或多个值匹配,以评估为true。 |
c != ANY (…) | c列中的值不能与集合中的一个或多个值匹配以评估为true。 |
c > ANY (…) | c列中的值必须大于要评估为true的集合中的最小值。 |
c < ANY (…) | c列中的值必须小于要评估为true的集合中的最大值。 |
c >= ANY (…) | c列中的值必须大于或等于要评估为true的集合中的最小值。 |
c <= ANY (…) | c列中的值必须小于或等于要评估为true的集合中的最大值。 |
示例:--29、查询选修编号为“3-105“课程且成绩至少高于选修编号为“3-245”的同学的Cno、Sno和Degree,并按Degree从高到低次序排序。
二,SQL Server All 运算符
All是一个逻辑运算符,它将单个值与子查询返回的单例值进行比较。
all运算符必须要结合比较运算符使用,>,>=,<,<=,=,<>开头,后面就是子查询
where 比较者 >all(子查询)
注意:如果子查询不返回任何行。则where子句中的条件始终未true,假设子查询返回一行或多行,下表
说明名了ALL运算符的含义:
条件 | 含义 |
c > ALL(…) | c列中的值必须大于要评估为true的集合中的最大值。 |
c >= ALL(…) | c列中的值必须大于或等于要评估为true的集合中的最大值。 |
c < ALL(…) | c列中的值必须小于要评估为true的集合中的最小值。 |
c <= ALL(…) | c列中的值必须小于或等于要评估为true的集合中的最小值。 |
c <> ALL(…) | c列中的值不得等于要评估为true的集合中的任何值。 |
c = ALL(…) | c列中的值必须等于要评估为true的集合中的任何值。 |
示例:--30、查询选修编号为“3-105”课程且成绩高于选修编号为“3-245”课程的同学的Cno、Sno,Degree.
总结:any和all的区别
他们又被称为多行子查询,一般是用于查询比较返回多行的数据,这两个运算符都是用于子查询,
any是任意,all是任何。这个任意和任何怎么理解呢?
好比如上面any和all的两个例子,都是大于号,any要大于子查询里面的最小一个,因为任一条数据满足外层查询都会被返回。all要大于里面最大的一个,任何就是包括集合里所有的数据。这就是我所理解的any和all。
到此这篇关于SQLserver中的any和all运算符的用法的文章就介绍到这了,更多相关SQLserver any和all运算符内容请搜索编程学习网以前的文章希望大家以后多多支持编程学习网!
本文标题为:SQLserver中的any和all运算符的用法
- Mongodb启动报错完美解决方案:about to fork child process,waiting until server is ready for connections. 2023-07-16
- 基于Python制作一个简单的文章搜索工具 2023-07-28
- Oracle 删除大量表记录操作分析总结 2023-07-23
- SQL Server 2022 AlwaysOn新特性之包含可用性组详解 2023-07-29
- MySQL8.0.28安装教程详细图解(windows 64位) 2023-07-26
- SQLSERVER调用C#的代码实现 2023-07-29
- 在阿里云CentOS 6.8上安装Redis 2023-09-12
- redis清除数据 2023-09-13
- Numpy中如何创建矩阵并等间隔抽取数据 2023-07-28
- 搭建单机Redis缓存服务的实现 2023-07-13