首頁 >資料庫 >Oracle >oracle中not的用法是什麼

oracle中not的用法是什麼

WBOY
WBOY原創
2022-01-21 10:35:014774瀏覽

在oracle中,not用來對指定的條件取反,當指定的條件為真時,not的結果就是假,當指定的條件為假時,not的結果就是真,語法為“Select where not 條件表達式”。

oracle中not的用法是什麼

本教學操作環境:Windows10系統、Oracle 11g版、Dell G3電腦。

oracle中not的用法是什麼

Oracle的邏輯運算子也是用在SQL語句中必不可少的因素,一共有三個

邏輯運算子意義

  • and 雙值運算符,如果左右兩個條件都為真,則得到的值就為真

  • or 雙值運算符,只要左右兩個條件有一個為真,則得到的值就為真

  • #not 單指運算符,又稱取反運算符,NOT通常是單目運算符,即NOT右側才能包含表達式,是對結果取反,如果表達式結果為True,那麼NOT的結果就為False;否則如果表達式的結果為False,那麼NOT的結果就為True。

Oracle的邏輯運算子也是用在SQL語下面使一些例子:

Select * from emp where sal > 2000 and job = ‘SALESMAN';

尋找那些薪水高於2000的且職位為銷售的職員。

Select * from emp where job = ‘CLERK' or deptno = 20;

尋找那些工作為CLERK或所在部門標號為20的職員的列表

Select * from emp where not (sal > 3000 or sal < 1500);

尋找那些工資既不大於3000也不小於1500,也即在1500到3000範圍的員工,相當於:select * from emp where sal between 1500 and 3000;

結合到前面所列出的各類運算符,在這裡匯總一下oracle中所有運算符的優先級句中必不可少的因素,一共有三個

運算子等級

  • 算術運算子(即' ','-','*','/') 1

  • 連接運算子(即'||') 2

  • #比較運算子(即'>','>=', '') 3

通常使用'()'可以改變運算子的優先權。

要注意的是and的優先順序要優於or,也就是說下面的語句

Select * from emp where sal < 1500 or sal >= 2000 and job = ‘ANALYST&#39;;

等價於

Select * from emp where sal < 1500 or (sal >= 2000 and job = ‘ANALYST&#39;);

而不是你所預期的

Select * from emp where (sal < 1500 or sal >= 2000) and job = ‘ANALYST&#39;;

一般我們即使要表達第一個語句所要表達的意思,為了避免誤解,都不採取第一種寫法,而是用括號來表示我們要先算後面的部分。

推薦教學:《Oracle教學

以上是oracle中not的用法是什麼的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn