select 1 where somevalue = '' or somevalue is null from sometable
我完全理解了背後的推理爲什麼我必須有兩個單獨的條件。令我感到困惑的是,爲什麼在這麼多年以後,還沒有一個標準的捷徑符號。爲什麼仍然沒有sql快捷方式在/ where條件中包含/不包含空值?
我可以看到爲什麼各種DBMS實現不提供快捷方式,因爲它不是必要的,這樣做會使你的SQL不那麼便攜,但考慮到所有DBMS的這種快捷方式的用處我不能理解爲什麼那些沒有添加快捷方式的權力會把這個做成sql規範。
我的問題:實際上是否有合法的理由,如果是的話是什麼?
雖然我可以看到你的觀點,但我猜測其中的一部分是空的東西的存在與缺乏這種東西的根本不同? –
呃,函數coalesce()解決了這個問題。爲什麼這是不夠的? –
@Gordon Linoff ... coalesce()將實現他想要的,但你可以很容易地使用coalesce將NULL轉換爲'Chester Copperpot'。我正在閱讀的問題的方式是OP正在尋找一個SQL構造,根據定義,邏輯上將空和空作爲比較/計算/等的目的相同 –