sql集合运算符使用方法
(1)IN运算符:它可以用来匹配一个固定集合中的某一项。比如说一个集合里面的年份有(2001,2003,2005),那么就可以有: 代码如下:SELECT * FROM T_Book IN运算符,除了支持从固定的集合里面去匹配,当然也支持动态的集合方式去匹配。比如如下方式: 代码如下:SELECT * FROM T_Reader (2)ANY和SOME集合运算符:在SQL SERVER里面,ANY和SOME是同义词,二者的用法和功能一样(一样还搞两个,不知道是不是蛋疼)。相比于IN运算符,ANY和SOME需要与其它的比较符(大于(>)、等于(=)、小于(<)、大于等于(>=)、小于等)共同使用,而且比较符需要在它们的前面。 注意:和IN 运算符不同,ANY 和SOME运算符不能与固定的集合相匹配,比如下面的SQL 语句是错误的: 代码如下:SELECT * FROM T_Book (3)ALL集合运算符:在SQL SERVER里面,ALL运算符也需要与其它的比较符(大于(>)、等于(=)、小于(<)、大于等于(>=)、小于等)共同使用,而且比较符需要在它们的前面。 I、与ANY和SOME 运算符相同,ALL 运算符同样不能与固定的集合相匹配,比如下面的SQL 语句是错误的: II、关于使用ALL运算符,还有一项需要注意,那就是这个ALL子查询结果为空时,匹配的结果并不是以空的方式来处理,而是相当于全部匹配成功。所以在使用ALL运算符的时候,这一个问题很容易在系统中造成BUG,因此使用时必须注意。比如: 如果ALL子查询的结果为空时,则将会取SELECT FYearOfJoin FROM T_Reader的全部结果来作为成功匹配的结果。 (4)EXISTS集合运算符:和IN、ANY、SOME、ALL等运算符不同,EXISTS运算符是单目运算符,它不与列匹配,因此它也不要求待匹配的集合是单列的。EXISTS运算符用来检查每一行是否匹配子查询,可以认为EXISTS就是用来测试子查询的结果是否为空,如果结果集为空则匹配结果为false,否则匹配结果为true。 代码如下:SELECT * FROM T_Category (编辑:甘南站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- 访问和更改关系数据,使用MSSQL外联接
- 巧妙利用PARTITION分组排名递增特性解决合并连续相同数据行
- mybaits非配置原因,导致SqlSession was not registered fo
- SQLserver 2005文件和文件组的作用说明
- mssql和sqlite中关于if not exists 的写法
- sql – 如何在JSON键上的postgres update语句中增加值
- sqlserverdriver配置方法 jdbc连接sqlserver
- SQL 2005使用专用管理员连接(DAC)的技巧及修改系统表的方法
- 安装SqlServer2005时版本变更检查 (警告)
- 如何查询SQL Server 2000数据库中的数据库角色列表?