在邏輯運算中除了與和或的邏輯之外還會存在一個非的邏輯 非得邏輯 如果原始條件的判斷為真 那麼結果就是假 反之
如果原始條件的判斷為假 那麼結果就是真
對於邏輯操作有一點說明 不要寫過於複雜的邏輯操作
select* from emp where sal<2000;
select*from emp where not sal>=2000; 以上兩個sql語句同個意思。
範圍查詢:
Between and 一般在查詢字串時 意義不大 一般都是在涉及到數字方面的時候
空判斷:
空在資料庫上解釋為不確定的內容 但是需要注意的是 如果在數字列使用判斷不能夠使用關係運算子完成 空的操作只能夠使用 is null
或者是is not null 或者是 not is null
in:
在指定查詢的過程之中 In的操作是最簡短的
既然在指定的範圍裡面使用in 那麼如果不在指定的範圍之中使用 not in
select* from emp where empno in(7369,7566,7788,9999,null)
select* from emp where empno not in(7369,7566,7788,9999)
注意:關於not in 與 null的問題:
在使用not in 進行範圍判斷的時候 如果範圍裡面含有null 那麼不會有輸出結果的
可以從淺層次的方面解釋就是 程式的運行依靠著記憶體 資料量很大的時候 你在not in 後面含有null (就是不確定的意思)
此時可能就要進行著全部查詢 而此時資料量很大 會造成很大的風險 造成死機