MYSQL過濾資料(四)AND OR

2021-08-20 12:56:31 字數 3662 閱讀 3428

and運算子是組合兩個或多個布林表示式的邏輯運算子,並且只有在兩個表示式都為true時才返回true。如果兩個表示式中的任何乙個值為false,and運算子將返回false。

where boolean_expression_1 and boolean_expression_2
下面**介紹and運算子的結果。

true

false

null

truetrue

false

null

falsefalse

false

false

nullnull

false

null

and運算子通常用於select,update,delete語句的where子句中,以形成過濾結果集的條件。and運算子也用於inner join或left join子句的連線條件。

我們使用示例資料庫中的customers表進行測試。

以下語句查詢位於usa和ca的客戶。我們在where子句中使用and運算子。

使用and運算子可以組合多個布林表示式。例如,以下查詢獲取位於美國ca州且信用額度(creditlimit)大於100k的客戶。

mysql or運算子連線兩個或多個布林表示式。當其中任何乙個表示式為true時,它將返回true。

下面是or運算子的語法:

boolean_expression_1 or boolean_expression_2
boolean_expression_1 orboolean_expression_2這個表示式有可能返回true或false。

下表顯示了or運算子的結果。

truefalsenull

truetrue

true

true

falsetrue

false

null

nulltrue

null

null

當您在語句中使用多個邏輯運算子時,如and 和or運算子,mysql是先計算 and 運算子,再計算or運算子。這就是所謂的運算子優先順序。

運算子優先順序確定運算子的求值順序。mysql首先計算具有較高優先順序的運算子。

請參閱以下示例。

select

true

o***lse

andfalse;

結果如下:

true or false and false

-----------------------

1

執行順序如下:

首先,mysql計算and運算子,這是,false and false返回false。

第二,mysql計算or運算子,這是,true or false返回true。

要更改計算的順序,請使用括號,例如:

select (true

o***lse) and

false;

結果如下:

(true or false) and false

-------------------------

0

執行順序如下:

首先,mysql計算圓括號中的表示式(true or false)返回true。

第二,mysql計算剩餘語句部分,true and false返回false。

我們使用示例資料庫中的customers表進行測試。

例如,要獲取位於美國和法國的客戶,請在where子句中使用or運算子,如下所示:

select 

customername, country

from

customers

where

country = 'usa'

or country = 'france';

結果如圖所示:

以下語句獲取位於美國或法國並且信用額度(creditlimit)大於10000的客戶。

select 

customername, country, creditlimit

from

customers

where

(country = 'usa'

or country = 'france')

and creditlimit > 100000;

結果如圖所示:

請注意,如果不使用括號,查詢將返回美國的客戶或信用額度(creditlimit)大於10000的法國的客戶。

select

customername, country, creditlimit

from

customers

where

country = 'usa'

or country = 'france'

and creditlimit > 100000;

結果如圖所示:

mysql過濾資料 MySQL過濾資料

1.mysql過濾資料 使用where子句 select prod name,prod price from products where prod price 2.50 檢查單個值 select prod name,prod price from products where prod name ...

MySQL必知必會 四 資料過濾

開始線 1.2 in操作符 1.3 not操作符 mysql允許給出多個where子句,以and子句的方式或or子句的方式使用 通過不止乙個列進行過濾 匹配任一條件的行 where可含任意數目的and和or操作符 分析 返回的行中有兩行 小於10美元,返回的行未按預期的進行過濾。sql理解為由 商1...

mysql過濾範圍 MySQL 過濾資料

使用select語句的where子句指定搜尋條件 在select語句中,資料根據where子句中指定的搜尋條件進行過濾,where子句在表名之後給出 select 列名1,列名2 from 表名 where 條件 條件為列中資料的特定值 where子句位置 select from where ord...