您好,登錄后才能下訂單哦!
Oracle的邏輯運算符也是用在SQL語句中必不可少的因素,一共有三個
邏輯運算符 |
意義 |
and |
雙值運算符,如果左右兩個條件都為真,則得到的值就為真 |
or |
雙值運算符,只要左右兩個條件有一個為真,則得到的值就為真 |
not |
單指運算符,如果原條件為真,則得到真,如果元條件為假,反之如果原條件為假,則結果為真 |
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 |
Is [not] null,[not] like,[not] in |
4 |
[not] between-and |
5 |
not |
6 |
and |
|
or |
通常使用‘()'可以改變運算符的優先級。
需要注意的是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 RMAN自動備份控制文件方法介紹 、 oracle邏輯結構分析 、 oracle 數據庫啟動階段分析 、 oracle 虛擬專用數據庫詳細介紹等。有什么問題可以隨時留言,小編會及時回復大家的。感謝朋友們對億速云網站的支持。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。