SQL 3. 高级数据过滤 - 3 反义运算符

“=”、“<”、“>”等运算符都是用来进行数值判断的,有的时候则向使用这些运算符的反义,比如“不等于”、“不小于”或者“不大于”,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!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值