如果在建立資料表時,允許某個欄位可以有 NULL 值,那要如何找出該欄位是 NULL 值的資料,或是找出不是 NULL 的資料呢?
要找出某個欄位中,有 NULL 值的資料,可以使用內建的函數 IS NULL,其使用的語法為:
陳述式 IS NULL
當「陳述式」的值是 NULL,就會傳回 TRUE,否則就會傳回 FALSE。
例如下面的程式碼,表示當找出「產品編號」 325 以下的產品,且「顏色」欄位為 NULL 的資料:
USE AdventureWorks
GO
SELECT ProductID 產品編號, Color 顏色
FROM Production.Product
WHERE Color IS NULL
AND ProductID < 325
ORDER BY ProductID
執行結果:
如果要逆轉 IS NULL 的結果,要再加上 NOT,也就是說,要找出某個欄位的值不是 NULL,要使用下面的語法:
陳述式 IS NOT NULL
當「陳述式」的值不是 NULL,就會傳回 TRUE,否則就會傳回 FALSE。例如下面的程式碼,會找出「產品編號」 325 以下的產品,但是「顏色」欄位不是 NULL 的資料:
USE AdventureWorks
GO
SELECT ProductID 產品編號, Color 顏色
FROM Production.Product
WHERE Color IS NOT NULL
AND ProductID < 325
ORDER BY ProductID
執行結果: