T-SQL :關於 NULL

資料表中的欄位如果沒有儲存任何資料,則會是一種NULL狀態,NULL不是空字串,初學者很容易將其與空字串搞混,如果一個欄位的內容是NULL,就表示這個欄位處於真空的狀態,在資料表中,用來識別的欄位並不允許處於NULL狀態,因為如此一來,應用程式將會找不到這一筆資料。

SQL透過 IS 判斷資料表中是否有NULL值,例如以下的陳述式:

SELECT fieldName
FROM TableName
WHERE shomeField IS NULL

當shomeField 這個欄位是NULL的時候,相關的資料會被取出。

當然,你可以使用IS NOT NULL來作反向的搜尋,將所有不是NULL的資料給取出。

另外,有一個函式叫作ISNULL,如果你想要以特定的字串表示NULL狀態的欄位內容,可以使用這個函式,例如以下的陳述式:

SELECT fieldName ,ISNULL(shomeField ,'NULLVALUE')
FROM TableName
WHERE shomeField IS NULL


執行的結果,會在shomeField 這個取出的欄位中,填入一個叫作 NULLVALUE 的值。

沒有留言: