SQL 3. 高级数据过滤 - 3 反义运算符
2011-01-24 15:11
465 查看
“=”、“<”、“>”等运算符都是用来进行数值判断的,有的时候则向使用这些运算符的反义,比如“不等于”、“不小于”或者“不大于”,MS SQL Server、DB2提供了“!” 运算符来对运算符求反义,也就是“!=”表示“不等于”、“!<”表示“不小于”,而“!>” 表示“不大于”。
比如要完成下面功能“检索所有年龄不等于22岁并且月工资哦不小于2000元的员工”,我们可以编写下面的SQL语句:
SELECT * FROM T_Employee WHERE FAge != 22 and FSalary !< 2000
正如上文体到,这种“不等于”、“不小于”、“不大于”的运算符只适用DB2 和MS SQL Server。如果在其他数据库系统上则需要用其他变通的方式实现,最常用的方式有两种:使用同义运算符和使用NOT运算符。
同义运算符 :
不等于 --- <>
不小于 --- >=
不大于 --- <=
比如,检索所有年龄不等于22岁并且月工资不小于2000元的员工:
SELECT * FROM T_Employee WHERE FAge <> 22 AND FSalary >= 2000
NOT 运算符用来将一个表达式的值取反,也就是降至为“真”
的表达式结果变为“假”
、将值为“假”
的表达式结果变为“真”
,使用方式也非常简单,即为“NOT(表达式)”
。比如要表达式“年龄不小于20”,那么可以使用“NOT (FAge < 20)”
比如,“检索所有年龄不等于22岁并且月工资不小于2000元的员工”,我们可以编写下面的SQL语句:
SELECT * FROM T_Employee WHERE NOT(FAge = 22) AND NOT(FSalary < 2000)
Note:
"!"运算符的方式只能运行在MS SQL Server和DB2这两种数据库系统上,所以如果应用程序需要一致到娶她数据库上的话,就应该避免这种方式,以免造成不必要的Bug!
比如要完成下面功能“检索所有年龄不等于22岁并且月工资哦不小于2000元的员工”,我们可以编写下面的SQL语句:
SELECT * FROM T_Employee WHERE FAge != 22 and FSalary !< 2000
正如上文体到,这种“不等于”、“不小于”、“不大于”的运算符只适用DB2 和MS SQL Server。如果在其他数据库系统上则需要用其他变通的方式实现,最常用的方式有两种:使用同义运算符和使用NOT运算符。
同义运算符 :
不等于 --- <>
不小于 --- >=
不大于 --- <=
比如,检索所有年龄不等于22岁并且月工资不小于2000元的员工:
SELECT * FROM T_Employee WHERE FAge <> 22 AND FSalary >= 2000
NOT 运算符用来将一个表达式的值取反,也就是降至为“真”
的表达式结果变为“假”
、将值为“假”
的表达式结果变为“真”
,使用方式也非常简单,即为“NOT(表达式)”
。比如要表达式“年龄不小于20”,那么可以使用“NOT (FAge < 20)”
比如,“检索所有年龄不等于22岁并且月工资不小于2000元的员工”,我们可以编写下面的SQL语句:
SELECT * FROM T_Employee WHERE NOT(FAge = 22) AND NOT(FSalary < 2000)
Note:
"!"运算符的方式只能运行在MS SQL Server和DB2这两种数据库系统上,所以如果应用程序需要一致到娶她数据库上的话,就应该避免这种方式,以免造成不必要的Bug!
相关文章推荐
- SQL 3.高级数据过滤 - 2 空值检测
- SQL 3. 高级数据过滤 - 5 范围值检测
- SQL 3.高级数据过滤 - 1 通配符过滤
- SQL 3. 高级数据过滤 - 4 多值检测
- 4.高级数据过滤 ---SQL
- 数据库高级数据过滤之SQL操作符与SELECT子句
- SQL---DML---WHERE过滤数据のAND,OR,IN,NOT的高级过滤
- SQL学习整理(五)高级数据过滤
- SQL高级数据过滤
- 第3天-sql基本检索与数据过滤
- SQL高级语句-BETWEEN 操作符在 WHERE 子句中使用,作用是选取介于两个值之间的数据范围。
- System.Data.SqlClient.SqlException: 数据类型 text 和 varchar 在 equal to 运算符中不兼容。
- sql server 的T-SQL 学习笔记(二)--- 解决union select插入多行数据过滤数据(union all)
- sqlserver join之后如何过滤右表中的某一些数据
- SQL高级应用之使用SQL查询Excel表格数据的方法
- SQL 基础之where过滤和 运算符(五)
- 关系数据库SQL之高级数据查询:去重复、组合查询、连接查询、虚拟表
- SQL-Server中数据检索(高级查询)
- Javascript高级程序设计——3.数据类型(1)typeof、null、undefined、boolean、number