首頁  >  文章  >  資料庫  >  mysql進階(五)資料表中帶OR的多條件查詢

mysql進階(五)資料表中帶OR的多條件查詢

黄舟
黄舟原創
2017-02-09 15:18:001197瀏覽

MySQL資料表中帶OR的多條件查詢

 

OR關鍵字可以聯合多個條件進行查詢。使用OR關鍵字時:

條件

1) 只要符合這幾個查詢條件的其中一個條件,這樣的記錄就會被查詢出來。

2) 如果不符合這些查詢條件中的任何一條,這樣的記錄將被排除掉。

語法格式

OR關鍵字的基本語法格式如下:

條件式1 OR 條件式2 [...OR 條件式n]

OR可連接兩個條件式,同時可使用多個OR關鍵字,以連接更多的條件表達式。

實例

實例1

使用OR關鍵字查詢employee表中d_id為1001,或sex為'男'的記錄。 SELECT語句的代碼如下:

SELECT * FROM employee WHERE d_id=1001 OR sex LIKE '男';

可將d_id為1001的記錄被查詢了出來,同時,sex為'男'的記錄也被查詢了出來。

這說明,使用OR關鍵字時,只要符合多個條件中的任意一個條件,就可以被查詢出來。

實例2

使用OR關鍵字查詢employee表中的記錄。查詢條件為num取值在(1,2,3)集合中,或是age的範圍為24~26,或是homeaddress的取值中包含「廈門市」。 SELECT語句的程式碼如下:

SELECT * FROM employee WHERE
         num IN(1,2,3) OR age BETWEEN 24 AND 26
         OR homeaddress LIK '%厦门市%';

結果顯示,只要符合這3個條件式中的任一個條件,這樣的記錄就會被查詢出來。

 

OR可以和AND一起使用。當兩者一起使用時,AND要比OR先運算。

實例3

使用OR和AND關鍵字查詢employee表中的記錄。 SELECT語句的代碼如下:

SELECT * FROM employee WHERE num IN(1,3,4) AND age=25 OR sex='女';

結果顯示,只要符合num IN(1,3,4) AND age=25的記錄或符合sex='女'的記錄都被顯示了出來。

如果將條件的順序換一下,將SELECT語句變成下面的情況:

SELECT * FROM employee WHERE sex='女' OR num IN(1,3,4) AND age=25;

結果顯示,與前面的SELECT語句的執行結果是一樣的。

這說明,AND關鍵字前後的條件先結合,然後再與OR關鍵字的條件結合。也就是說,AND要比OR先運算。

提示

AND和OR關鍵字可以連接條件表達式。這些條件式中可以使用「=」、「>」等運算符,也可以使用IN、BETWEEN AND和LIKE等關鍵字,而且,LIKE關鍵字符合字串時可以使用「%」和「_」等通配符。

以上就是 mysql進階(五)資料表中帶OR的多條件查詢的內容,更多相關內容請關注PHP中文網(www.php.cn)!


陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn