Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Dotyczy:SQL Server
Azure SQL Database
Azure SQL Managed Instance
Baza danych SQL w usłudze Microsoft Fabric
Operatory porównania testują, czy dwa wyrażenia są takie same. Operatory porównania mogą być używane we wszystkich wyrażeniach z wyjątkiem wyrażeń tekstu, ntekstu lub typów danych obrazów . W poniższej tabeli wymieniono operatory porównania Transact-SQL.
| Operator | Meaning |
|---|---|
| = (równa się) | Równa się |
| > (Większe niż) | Większe niż |
| < (Mniej niż) | Mniejsze niż |
| >= (Większe niż lub równe) | Większe niż lub równe |
| <= (mniejsze niż lub równe) | Mniej lub równe |
| <> (Nie równa się) | Nie równa się |
| != (nie równa się) | Nie równe (a nie standard ISO) |
| !< (Nie mniej niż) | Nie mniej niż (nie standard ISO) |
| !> (Nie większe niż) | Nie większe niż (nie standard ISO) |
Typ danych logicznych
Wynik operatora porównania ma typ danych logicznych . Ma to trzy wartości: TRUE, FALSE i UNKNOWN. Wyrażenia zwracające typ danych logicznych są nazywane wyrażeniami logicznymi.
W przeciwieństwie do innych typów danych programu SQL Server nie można określić typu danych logicznych jako typu danych kolumny lub zmiennej tabeli i nie można ich zwrócić w zestawie wyników.
Gdy ustawienie set ANSI_NULLS jest włączone, operator, który ma jedno lub dwa wyrażenia NULL, zwraca wartość UNKNOWN. Jeśli ustawienie set ANSI_NULLS jest wyłączone, obowiązują te same reguły, z wyjątkiem operatorów równości (=) i nie równa (<>). Jeśli ustawienie SET ANSI_NULLS jest wyłączone, te operatory traktują wartość NULL jako znaną wartość, równoważną innej wartości NULL i zwracają tylko wartość TRUE lub FALSE (nigdy NIE JEST ZNANA).
Wyrażenia z typami danych logicznych są używane w klauzuli WHERE do filtrowania wierszy, które kwalifikują się do warunków wyszukiwania i w instrukcjach języka sterowania przepływem, takich jak IF i WHILE, na przykład:
-- Uses AdventureWorks
DECLARE @MyProduct INT;
SET @MyProduct = 750;
IF (@MyProduct <> 0)
SELECT ProductID, Name, ProductNumber
FROM Production.Product
WHERE ProductID = @MyProduct;