Oracle中“不等于”的使用
生活随笔
收集整理的這篇文章主要介紹了
Oracle中“不等于”的使用
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
在oracle中判斷字段id不是“123”時,
select * from user where id<> '123'; 但是id為空的,卻怎么也查詢不出來。這是why?原因是:字段為null的時候,只能通過is null或者is not null來判斷。
這樣寫才是正確的: select * from user where id <> '123' or id is null;注意:當使用or 和 and 拼接語句時,需要注意執行的先后順序。where 后面如果有and,or的條件,則or自動會把左右的查詢條件分開,即先執行and,再執行or。原因就是:and的執行優先級最高!
邏輯運算的順序 SQL1: select count(*) from tableA where DEL_FLAG = '0' or DEL_FLAG is null and 1 <> 1 相當于 SQL1: select count(*) from tableA where DEL_FLAG = '0' or (DEL_FLAG is null and 1 <> 1) 當判斷第一個條件DEL_FLAG = '0' 滿足時,就不再繼續判斷后面的條件了而 SQL2: select count(*) from tableA where (DEL_FLAG = '0' or DEL_FLAG is null) and 1 <> 1 判斷(DEL_FLAG = '0' or DEL_FLAG is null)這個條件的結果,并且要同時滿足后面的 and 1<>1 顯然 1<>1 是false總結
以上是生活随笔為你收集整理的Oracle中“不等于”的使用的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: PHP7.2的安装与配置(win7)
- 下一篇: 贪婪算法在求解最短路径中的应用(JAVA