SQL AND, OR and NOT(與,或不是運(yùn)算符)

2022-05-20 15:16 更新

SQL AND & OR 運(yùn)算符


 AND&OR運(yùn)算符用于根據(jù)一個(gè)以上的條件過濾記錄,即用于組合多個(gè)條件以縮小SQL語句中的數(shù)據(jù)。

 WHERE子句可以與AND,OR和NOT運(yùn)算符結(jié)合使用。

 AND和OR運(yùn)算符用于根據(jù)多個(gè)條件篩選記錄:

  • 如果由AND分隔的所有條件為TRUE,則AND運(yùn)算符顯示記錄。
  • 如果使用AND運(yùn)算符組合N個(gè)條件。對(duì)于SQL語句執(zhí)行的操作(無論是事務(wù)還是查詢),所有由AND分隔的條件都必須為TRUE。
  • 如果由OR分隔的任何條件為真,則OR運(yùn)算符顯示記錄。
  • 如果使用OR運(yùn)算符組合N個(gè)條件。對(duì)于SQL語句執(zhí)行的操作(無論是事務(wù)還是查詢),OR分隔的任何一個(gè)條件都必須為TRUE。

 如果條件不為TRUE,則NOT運(yùn)算符顯示記錄。 

AND語法

SELECT column1, column2, ...
FROM table_name
WHERE condition1 AND condition2 AND condition3 ...;

OR語法

SELECT column1, column2, ...
FROM table_name
WHERE condition1 OR condition2 OR condition3 ...;

NOT語法

SELECT column1, column2, ...
FROM table_name
WHERE NOT condition;


演示數(shù)據(jù)庫


 在本教程中,我們將使用著名的Northwind示例數(shù)據(jù)庫。

 以下是"Customers"表中的數(shù)據(jù):

CustomerID CustomerName ContactName Address City PostalCode Country
1
Alfreds Futterkiste Maria Anders Obere Str. 57 Berlin 12209 Germany
2 Ana Trujillo Emparedados y helados Ana Trujillo Avda. de la Constitución 2222 México D.F. 05021 Mexico
3 Antonio Moreno Taquería Antonio Moreno Mataderos 2312 México D.F. 05023 Mexico
4
Around the Horn Thomas Hardy 120 Hanover Sq. London WA1 1DP UK
5 Berglunds snabbk?p Christina Berglund Berguvsv?gen 8 Lule? S-958 22 Sweden

AND 運(yùn)算符實(shí)例


 以下SQL語句從 "Customers" 表中選擇其國家為 "Germany" 、其城市為"Berlin" 的所有客戶:

實(shí)例

SELECT * FROM Customers
WHERE Country='Germany'
AND City='Berlin';

OR 運(yùn)算符實(shí)例


 以下SQL語句選擇城市為“Berlin”或“München”的“Customers”的所有字段:

實(shí)例

SELECT * FROM Customers
WHERE City='Berlin' OR City='München';

NOT 運(yùn)算符實(shí)例


 以下SQL語句選擇國家不是 "Germany"的"Customers"的所有字段:

SELECT * FROM Customers
WHERE NOT Country='Germany';

結(jié)合 AND & OR


 您還可以組合AND和OR(使用括號(hào)來組成成復(fù)雜的表達(dá)式)。

 以下SQL語句從國家 "Germany" 且城市為"Berlin" 或"München"的"Customers" 表中選擇所有客戶:

實(shí)例

SELECT * FROM Customers
WHERE Country='Germany'
AND (City='Berlin' OR City='München');


結(jié)合AND,OR和NOT


 你也可以結(jié)合AND,OR和NOT運(yùn)算符。

 以下SQL語句選擇國家是“德國”的“客戶”的所有字段,城市必須是“柏林”或“慕尼黑”(用括號(hào)形成復(fù)雜表達(dá)式):

 代碼示例:

SELECT * FROM Customers
WHERE Country='Germany' AND (City='Berlin' OR City='München');

 以下SQL語句選擇來自"Customers" 的國家不是 "Germany" 且不是 "USA"的所有字段:

 代碼示例:

SELECT * FROM Customers
WHERE NOT Country='Germany' AND NOT Country='USA';

章節(jié)小測


 現(xiàn)在,通過以下題目測測看您對(duì)“SQL AND, OR and NOT(與,或不是運(yùn)算符)”的掌握程度吧!

 SQL AND, OR運(yùn)算符:在本部分測驗(yàn)中,您將練習(xí)使用 SQL 的 AND, OR 運(yùn)算符。

 點(diǎn)擊此處進(jìn)行測試>>

注:以上測試為付費(fèi)測試,高級(jí)VIP免費(fèi)

 更多測試題請(qǐng)參考:《SQL測驗(yàn)》題庫>>


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

掃描二維碼

下載編程獅App

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

編程獅公眾號(hào)