標籤:www tle led and cancel tom 表達 png 布爾
在本教程中,將學習如何使用Oracle AND運算子來組合兩個或更多的布林運算式。
Oracle AND運算子介紹
AND運算子是一個邏輯運算子,它組合了布林運算式,如果兩個運算式都為真,則返回true。 如果其中一個運算式為假,則AND運算子返回false。
AND運算子的文法如下所示:
expression_1 AND expression_2
下表說明了使用AND運算子合并true,false和NULL值時的結果 -
| 值 |
TRUE |
FALSE |
NULL |
| TRUE |
TRUE |
FALSE |
NULL |
| FALSE |
FALSE |
FALSE |
FALSE |
| NULL |
NULL |
FALSE |
NULL |
通常,在SELECT,DELETE和UPDATE語句的WHERE子句中使用AND來形成匹配資料的條件。 另外,在JOIN子句的謂詞中使用AND運算子來形成串連條件。
在聲明中使用多個邏輯運算子時,Oracle始終首先評估AND運算子。 但是,可以使用括弧來更改評估的順序。
Oracle AND算符的例子
請參閱樣本資料庫中的以下訂單(orders)表:
1. Oracle
AND結合兩個布林運算式的例子
以下樣本尋找具有客戶編碼為2的那些狀態為掛起(Pending)的訂單:
SELECT order_id, customer_id, status, TO_CHAR(order_date,‘YYYY-MM-DD‘) AS order_dateFROM ordersWHERE status = ‘Pending‘ AND customer_id = 2ORDER BY order_date;
在這個例子中,查詢返回了滿足兩個運算式的所有訂單資訊,即:
status = ‘Pending‘
和
customer_id = 2
執行上面查詢語句,得到以下結果:
2. Oracle AND結合兩個以上的布林運算式的例子
可以使用多個AND運算子來組合布林運算式。
例如,以下語句檢索滿足以下所有條件的訂單:
- 在
2017年放置。
- 負責售貨員編號為
60。
- 有發貨狀態。
參考以下查詢語句 -
SELECT order_id, customer_id, status, TO_CHAR(order_date, ‘YYYY-MM-DD‘) AS order_dateFROM ordersWHERE status = ‘Shipped‘ AND salesman_id = 60 AND EXTRACT(YEAR FROM order_date) = 2017ORDER BY order_date;
執行上面查詢語句,得到以下結果 -
3. Oracle AND與OR運算子結合樣本
可以將AND運算子與其他邏輯運算子(如OR和NOT)組合,以形成一個條件。
例如,以下查詢尋找客戶ID為44的訂單,並且狀態已取消(Canceled) 或 待定(Pending)。參考以下實現語句 -
SELECT order_id, customer_id, status, salesman_id, TO_CHAR(order_date, ‘YYYY-MM-DD‘) AS order_dateFROM ordersWHERE (status = ‘Canceled‘ OR status = ‘Pending‘) AND customer_id = 44ORDER BY order_date;
執行上面查詢語句,得到以下結果 -
在本教程中,我們已學習如何使用Oracle AND運算子來組合兩個或更多的布林運算式。
Oracle And子句