比較運算子 (Transact-SQL)

適用於:SQL ServerAzure SQL DatabaseAzure SQL 受控執行個體

比較運算子用來測試兩個運算式是否相同。 除了 textntextimage 資料類型的運算式,所有運算式都可使用比較運算子。 下表會列出 Transact-SQL 比較運算子。

運算子 意義
= (等於) 等於
> (大於) 大於
< (小於) 小於
>= (大於或等於) 大於或等於
<= (小於或等於) 小於或等於
<> (不等於) 不等於
!= (不等於) 不等於 (不是 ISO 標準)
!< (不小於) 不小於 (不是 ISO 標準)
!> (不大於) 不大於 (不是 ISO 標準)

Boolean 資料類型

比較運算子的結果具有 Boolean 資料類型。 它有三個值:TRUE、FALSE 和 UNKNOWN。 傳回 Boolean 資料類型的運算式稱為布林運算式。

Boolean 資料類型和其他 SQL Server 資料類型不同,不能指定為資料表資料行或變數的資料類型,也無法使用結果集傳回。

當 SET ANSI_NULLS 是 ON 時,有一或兩個 NULL 運算式的運算子會傳回 UNKNOWN。 當 SET ANSI_NULLS 是 OFF 時,會套用相同的規則,但等於 (=) 和不等於 (<>) 運算子除外。 當 SET ANSI_NULLS 是 OFF 時,這些運算子會將 NULL 視為已知值,等同於任何其他 NULL,並且只會傳回 TRUE 或 FALSE (絶不會是 UNKNOWN)。

在 WHERE 子句中使用含 Boolean 資料類型的運算式,來篩選符合搜尋條件,且在 IF 和 WHILE 之類流程控制語言陳述式中的資料列,例如:

-- Uses AdventureWorks  
  
DECLARE @MyProduct INT;  
SET @MyProduct = 750;  
IF (@MyProduct <> 0)  
   SELECT ProductID, Name, ProductNumber  
   FROM Production.Product  
   WHERE ProductID = @MyProduct;  

另請參閱

運算式 (Transact-SQL)
運算子 (Transact-SQL)