Поделиться через


Операторы сравнения (Transact-SQL)

Область применения: SQL Server База данных SQL Azure Управляемый экземпляр SQL Azure

Операторы сравнения позволяют проверить, одинаковы ли два выражения. Операторы сравнения можно применять ко всем выражениям, за исключением выражений типов text, ntext и image. Операторы сравнения Transact-SQL приведены в следующей таблице.

Оператор Значение
= (равно) Равно
> (Больше чем) Больше
< (Меньше чем) Меньше
>= (Больше или равно) Больше или равно
<= (Меньше или равно) Меньше или равно
<> (Не равно) Не равно
\!= (не равно) Не равно (не определено стандартом ISO)
!< (Не меньше) Не меньше (не определено стандартом ISO)
!> (Не больше) Не больше (не определено стандартом ISO)

Тип данных Boolean

Результат выполнения оператора сравнения имеет тип данных Boolean. Он имеет три значения: TRUE, FALSE и UNKNOWN. Выражения, возвращающие значения типа Boolean, называются логическими.

В отличие от других типов данных SQL Server, логический тип данных не может быть указан в качестве типа данных столбца таблицы или переменной и не может быть возвращен в результирующем наборе.

Если параметр SET ANSI_NULLS имеет значение ON, оператор, в число операндов которого входит хотя бы одно выражение NULL, возвращает UNKNOWN. Если параметр SET ANSI_NULLS имеет значение OFF, применяются те же правила, за исключением операторов равенства (=) и неравенства (<>). Если параметр SET ANSI_NULLS имеет значение OFF, эти операторы обрабатывают значение NULL как известное значение, эквивалентное любым другим значениям NULL, и возвращают только значение TRUE или FALSE (и никогда UNKNOWN).

Выражения со значениями типа Boolean используются в предложении WHERE для фильтрации строк, удовлетворяющих условиям поиска, и в инструкциях языка управления потоком, таких как 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)