天天看點

Oracle中的null

測試資料:公司部分員工基本資訊

現在需要查詢出退休員工,查詢SQL(年齡大于等于60的男性和年齡大于等于50的女性):

select *
  from person t
 where (t.sex = '1' and t.age >= 60)
    or (t.sex <> '1' and t.age >= 50);      

由于資料錄入不完整,存在以下兩位員工:

5    62    錢**        65

6    67    孫**         62

導緻查詢結果為:

以上的例子說明:在oracle資料庫中,null不滿足等于'1',也不滿足不等于'1',而''不滿足等于'1',但滿足不等于'1'。

另外一個in相關的例子:

select  t.* from person t where t.sex not in ('1');      

查詢結果:

not in 和 <> 類似,是以以後寫SQL時,需要注意。

作者:

Candyメ奶糖

出處:

http://www.cnblogs.com/Candies/

本文版權歸作者和部落格園共有,歡迎轉載,但未經作者同意必須保留此段聲明,且在文章頁面明顯位置給出原文連接配接,否則保留追究法律責任的權利。

博文來源廣泛,如原作者認為我侵犯知識産權,請盡快給我發郵件

[email protected]

聯系,我将以第一時間删除相關内容。