SQL NULL 值
NULL 值代表遺漏的未知資料。
預設地,表格的欄位可以存放 NULL 值。
本章講解 IS NULL 和 IS NOT NULL 運算子。
SQL NULL 值
如果表中的某個列是可選的,那麼我們可以在不向該列新增值的情況下插入新記錄或更新已有的記錄。這表示該欄位將以 NULL 值保存。
NULL 值的處理方式與其他值不同。
NULL 用作未知的或不適用的值的佔位符。
註解:無法比較 NULL 和 0;它們是不等價的。
SQL 的NULL 值處理
請看下面的"Persons" 表:
LastName | FirstName | Address | City | |
---|---|---|---|---|
Hansen | #Ola | |||
Svendson | Tove | Borgvn 23 | Sandnes | |
Pettersen | Kari |
## Stavanger
假如"Persons" 表中的"Address" 欄位是可選的。這表示如果在 "Address" 欄位插入不帶值的記錄,"Address" 欄位會使用 NULL 值儲存。
SQL IS NULL | 我們如何只選取在 "Address" 欄位中帶有 NULL 值的記錄呢? | 我們必須使用IS NULL 運算元: |
---|---|---|
SELECT LastName,FirstName,Address FROM Persons | WHERE Address IS NULL#結果集如下所示: | |
LastName | FirstName | Address |
提示:請一律使用 IS NULL 來尋找 NULL 值。
SQL IS NOT NULL
我們如何只選取在 "Address" 欄位中不帶有 NULL 值的記錄呢?
我們必須使用IS NOT NULL 運算子:
SELECT LastName,FirstName,Address FROM Persons
WHERE Address IS NOT NULL
WHERE Address IS NOT NULL
結果集合如下圖所示:
LastName | FirstName | Address |
---|---|---|
Svendson | Tove | Borgvn 23 |
在下一節中,我們了解ISNULL()、NVL()、IFNULL() 和COALESCE()函數。