下面表中显示了通常使用的比较操作符。

表 1. Comparison Operators
Operator Description
< Less than
> Greater than
<= Less than or equal to
>= Greater than or equal to
or Description
= Equal
<> Not equal
! = Not equal

对于所有实际使用的数据类型来说,我们都可以使用比较操作符。所有比较操作符都是二元操作符,用于返回布尔类型的值;像1<2<3这样的表达式是无效的(因为这里小于操作符不能在数值3和一个布尔类型值之间进行比较)。

除了比较操作符外,也可以使用BETWEEN操作符,如下所示:

  • a BETWEEN x AND y

    等同于

    a >= x AND a <= y 
  • a NOT BETWEEN x AND y

    等同于

    a < x OR a > y

除了在CPU运算的时候需要把第一形式的表达式重写成第二种外,这两种形式的表达式没有任何区别。

为检查一个值是否为空,我们可以使用下列形式的表达式:

expression IS NULL
expression IS NOT NULL

不要使用像expression = NULL这样的表达式。因为 NULL不等于空值(空值代表不确定的值,所以不能确定两个不确定的值是否相等)。这个行为符合SQL标准。

如果表达式计算值为空,那么一些程序可能期望expression = NULL的返回值为真。而在这里强烈推荐修改程序来符合SQL标准。