Aracılığıyla paylaş


ISNULL (Transact-SQL)

NULL olan belirtilen değiştirme değerinin yerini alır.

Topic link iconTransact-SQL sözdizimi kuralları

ISNULL ( check_expression , replacement_value )

Bağımsız değişkenler

  • 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.

Dönüş Türleri

Aynı türde döndürür. check_expression.

Remarks

Değeri check_expression Bu değilse, NULL; aksi takdirde, döndürdü replacement_value türüne örtülü olarak dönüştürüldükten sonra döndürdü check_expression, türleri farklı olduğunda.

Örnekler

C.ISNULL AVG ile kullanma

Aşağıdaki örnek, tüm ürünleri ağırlığını ortalamasını bulur.Bu değeri kullanır 50 tüm null girişler için Weight sütun Product TABLO.

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

Here is the result set.

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

(1 row(s) affected)

b.ISNULL kullanma

Aşağıdaki örnek, açıklama, iskonto yüzdesini, minimum miktarı ve maksimum miktar tüm özel kampanyalar için seçer AdventureWorks. NULL, maksimum miktarı belirli özel indirim ise, MaxQty gösterilen sonucu kümesidir 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.Bir WHERE yan tümcesinde null için sınama

ISNULL NULL değerleri bulmak için kullanmayın.IS NULL kullanın.Aşağıdaki örnek olan tüm ürünleri bulur. NULL Ağırlık, sütun. Arasındaki unutmayın. IS ve NULL.

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