在oracle中,not用來對指定的條件取反,當指定的條件為真時,not的結果就是假,當指定的條件為假時,not的結果就是真,語法為“Select where not 條件表達式”。
本教學操作環境:Windows10系統、Oracle 11g版、Dell G3電腦。
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';
等價於
Select * from emp where sal < 1500 or (sal >= 2000 and job = ‘ANALYST');
而不是你所預期的
Select * from emp where (sal < 1500 or sal >= 2000) and job = ‘ANALYST';
一般我們即使要表達第一個語句所要表達的意思,為了避免誤解,都不採取第一種寫法,而是用括號來表示我們要先算後面的部分。
推薦教學:《Oracle教學》
以上是oracle中not的用法是什麼的詳細內容。更多資訊請關注PHP中文網其他相關文章!