比较运算符虽然很简单,但是还有几点值得我写一写,以免我以后忘了。。。
1. SQLServer中是3值逻辑,即Bool的值有3个,除了True,False之外还有UNKnown。
2. SQLServer中没有bool数据类型,所以bool的值是不能被存储的,只能用于条件子句,或者条件判断中。
3. 含有NULL的比较结果: ISO规定含有NULL值的比较表达式的结果是UNKnown,但是在SQLserver中不一定哦,可以通过控制ANSI_NULLS的开关来控制含有NULL值的比较表达式的行为。官网上说SQLServer以后的版本中(我的版本是2008 R2)ANSI_NULLS不能被关闭,即SQLServer会在以后始终采用ISO的标准,所有以免为以后埋坑,目前最好不要关闭ANSI_NULLS。
4. 共9个比较运算符:=, >, < , >=, <=, <>, !=(非等于), !>(非大于), !<(非小于)
其中:
!= 等价于 <>
>= 等价于 !<
<= 等价于 !>