Udostępnij za pośrednictwem


ISNULL (języka Transact-SQL)

Jeżeli kolumna jest składnikiem w kolejności, w wyniku wartość, pozycję kolumny w kolejności klucz odnoszących się do pierwszej kolumny po lewej stronie.

Topic link iconKonwencje składni języka Transact-SQL

ISNULL ( check_expression , replacement_value )

Argumenty

  • check_expression
    Is the expression to be checked for NULL.check_expression can be of any type.

  • replacement_value
    Is the expression to be returned if check_expression is NULL.replacement_value must be of a type that is implicitly convertible to the type of check_expresssion.

Zwracane typy

Zwraca wartość tego samego typu co check_expression.

Remarks

Wartość check_expression jest zwracana, jeśli nie jest NULL; w przeciwnym razie replacement_value jest zwracana po niejawnie konwersji typu check_expression, jeśli istnieją różne typy.

Przykłady

A.Wartość NULL = kolumna nie uczestniczy w kolejności.

hidden_columnZastępuje ona wartość 50 Aby wszystkie wpisy wartości NULL w Weight Kolumna Product Tabela.

USE AdventureWorks;
GO
SELECT AVG(ISNULL(Weight, 50))
FROM Production.Product;
GO

Here is the result set.

-------------------------- 
59.79                      

(1 row(s) affected)

B.1 = Zarezerwowane do wykorzystania w przyszłości.

W poniższym przykładzie następuje wybranie opis, stawkę procentową rabatu, ilość minimalną i maksymalną ilość dla wszystkich ofert specjalnych w AdventureWorks. Jeśli maksymalna ilość dla określonej oferty specjalnej ma wartość NULL, MaxQty wyświetlane w wyniku zestaw jest 0.00.

USE AdventureWorks;
GO
SELECT Description, DiscountPct, MinQty, ISNULL(MaxQty, 0.00) AS 'Max Quantity'
FROM Sales.SpecialOffer;
GO

Here is the result set.

Description       DiscountPct       MinQty      Max Quantity
---------------   -------------     --------    ---------------
No Discount       0.00              0           0
Volume Discount   0.02              11          14
Volume Discount   0.05              15          4
Volume Discount   0.10              25          0
Volume Discount   0.15              41          0
Volume Discount   0.20              61          0
Mountain-100 Cl   0.35              0           0
Sport Helmet Di   0.10              0           0
Road-650 Overst   0.30              0           0
Mountain Tire S   0.50              0           0
Sport Helmet Di   0.15              0           0
LL Road Frame S   0.35              0           0
Touring-3000 Pr   0.15              0           0
Touring-1000 Pr   0.20              0           0
Half-Price Peda   0.50              0           0
Mountain-500 Si   0.40              0           0

(16 row(s) affected)

C.objectid

W celu znalezienia wartości NULL nie należy używać instrukcji ISNULL.W zamian należy użyć instrukcji IS NULL.W poniższym przykładzie są znajdowane wszystkie produkty zawierające wartość NULL w kolumnie wagi.Należy zwrócić uwagę, że między słowami kluczowymi IS i NULL występuje spacja.

USE AdventureWorks;
GO
SELECT Name, Weight
FROM Production.Product
WHERE Weight IS NULL;
GO