2011-11-02 64 views
0

當執行以下查詢時,它將返回null。SQL Server空值問題

說明:經度是varchar列,許多行在那裏有longitude = null,但是這個查詢沒有返回任何東西。

我的事情我錯過了一分鐘的事情。

select * from fb_event where longitude =null 
+0

這不是一個SQL Server問題 - 需要讀入一個簡介到SQL,XXXcoder。三元邏輯在所有SQL實現中都是相同的,這是有原因的。 – TomTom

回答

4

您的where子句應爲where longitude is null

空不等於空,因此您必須使用「is」而不是「=」。

+1

+1 NULL實際上不是一個值 - 它是值**的缺失** - 因此您不能使用常規值比較 –

+1

更確切地說,因爲NULL是未知的,所以比較一個未知與另一個未知是否爲真 - NULL != NULL。 NULL也會破壞值。帶有一個NULL項的SUM也是NULL(未知)。 – TomTom

+1

謝謝@marc_s –