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