比较运算符 (Transact-SQL)

比较运算符测试两个表达式是否相同。 除了 text、ntext 或 image 数据类型的表达式外,比较运算符可以用于所有的表达式。 下表列出了 Transact-SQL 比较运算符。

运算符

含义

=(等于)

等于

>(大于)

大于

<(小于)

小于

>=(大于等于)

大于等于

<=(小于等于)

小于等于

<>(不等于)

不等于

!=(不等于)

不等于(非 ISO 标准)

!<(不小于)

不小于(非 ISO 标准)

!>(不大于)

不大于(非 ISO 标准)

Boolean 数据类型

具有 Boolean 数据类型的比较运算符的结果。 它有三个值:TRUE、FALSE 和 UNKNOWN。 返回 Boolean 数据类型的表达式称为布尔表达式。

与其他 SQL Server 数据类型不同,Boolean 数据类型不能被指定为表列或变量的数据类型,也不能在结果集中返回。

当 SET ANSI_NULLS 为 ON 时,带有一个或两个 NULL 表达式的运算符返回 UNKNOWN。 当 SET ANSI_NULLS 为 OFF 时,上述规则同样适用,但是两个表达式均为 NULL,则等号 (=) 运算符返回 TRUE。 例如,如果 SET ANSI_NULLS 为 OFF,则 NULL = NULL 返回 TRUE。

在 WHERE 子句中使用数据类型为 Boolean 的表达式,可以筛选出符合搜索条件的行,也可以在流控制语言语句(例如 IF 和 WHILE)中使用这种表达式。例如:

USE AdventureWorks2012;
GO
DECLARE @MyProduct int;
SET @MyProduct = 750;
IF (@MyProduct <> 0)
   SELECT ProductID, Name, ProductNumber
   FROM Production.Product
   WHERE ProductID = @MyProduct;

请参阅

参考

表达式(Transact-SQL)