Oracle And子句

2023-12-13 16:56 更新

Oracle AND是一個(gè)邏輯運(yùn)算符,可以用來(lái)組合兩個(gè)或更多的布爾表達(dá)式。本文就將為大家?guī)?lái)Oracle AND的使用方法。

Oracle AND運(yùn)算符語(yǔ)法

AND運(yùn)算符是一個(gè)邏輯運(yùn)算符,它組合了布爾表達(dá)式,如果兩個(gè)表達(dá)式都為真,則返回true。 如果其中一個(gè)表達(dá)式為假,則AND運(yùn)算符返回false。

AND運(yùn)算符的語(yǔ)法如下所示:

expression_1 AND expression_2

下表說(shuō)明了使用AND運(yùn)算符合并true,false和NULL值時(shí)的結(jié)果:

TRUE FALSE NULL
TRUE TRUE FALSE NULL
FALSE FALSE FALSE FALSE
NULL NULL FALSE NULL

通常,在SELECT,DELETE和UPDATE語(yǔ)句的WHERE子句中使用AND來(lái)形成匹配數(shù)據(jù)的條件。 另外,在JOIN子句的謂詞中使用AND運(yùn)算符來(lái)形成連接條件。

在聲明中使用多個(gè)邏輯運(yùn)算符時(shí),Oracle始終首先評(píng)估AND運(yùn)算符。 但是,可以使用括號(hào)來(lái)更改評(píng)估的順序。

Oracle AND算符實(shí)例

以下數(shù)據(jù)庫(kù)中的訂單(orders)表為例:

1

1. Oracle AND結(jié)合兩個(gè)布爾表達(dá)式的例子

以下示例查找具有客戶編號(hào)為2的那些狀態(tài)為掛起(Pending)的訂單:

SELECT order_id, customer_id, status, TO_CHAR(order_date,'YYYY-MM-DD') AS order_date
FROM orders
WHERE  status = 'Pending'  AND customer_id = 2
ORDER BY order_date;

在這個(gè)例子中,查詢返回了滿足兩個(gè)表達(dá)式的所有訂單信息,即:

status = 'Pending'

customer_id = 2

執(zhí)行上面的代碼可以得到以下結(jié)果:

2

2. Oracle AND結(jié)合兩個(gè)以上的布爾表達(dá)式的例子

可以使用多個(gè)AND運(yùn)算符來(lái)組合布爾表達(dá)式。

例如,以下語(yǔ)句檢索滿足以下所有條件的訂單:

  • 在2017年放置。
  • 負(fù)責(zé)售貨員編號(hào)為60。
  • 有發(fā)貨狀態(tài)。

參考以下查詢語(yǔ)句:

SELECT
    order_id,
    customer_id,
    status,
    TO_CHAR(order_date, 'YYYY-MM-DD') AS order_date
FROM
    orders
WHERE
    status = 'Shipped'
    AND salesman_id = 60
    AND EXTRACT(YEAR FROM order_date) = 2017
ORDER BY
    order_date;

執(zhí)行上面的代碼可以得到以下結(jié)果:

3

3. Oracle AND與OR運(yùn)算符結(jié)合示例

可以將AND運(yùn)算符與其他邏輯運(yùn)算符(如OR和NOT)組合,以形成一個(gè)條件。

例如,以下查詢查找客戶ID為44的訂單,并且狀態(tài)已取消(Canceled) 或 待定(Pending)。參考以下實(shí)現(xiàn)語(yǔ)句:

SELECT
    order_id,
    customer_id,
    status,
    salesman_id,
    TO_CHAR(order_date, 'YYYY-MM-DD') AS order_date
FROM
    orders
WHERE
    (status = 'Canceled' OR status = 'Pending')
    AND customer_id = 44
ORDER BY
    order_date;

執(zhí)行上面的代碼可以得到以下結(jié)果:

4


以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)