目錄:
1、算術運算符
2、比較運算符
3、邏輯運算符
4、位運算符
運算符優先級
1、算術運算符
mysql采用的算術運算符和python的算術運算符基本相同,包含加(+)、減(-)、乘(*)、除(/)、取餘(%)
符号 | 作用 |
---|---|
+ | 加法運算 |
- | 減法運算 |
* | 乘法運算 |
/或 DIV | 除法運算 |
%或 MOD | 取餘運算 |
2、比較運算符
SELECT 語句中的條件語句經常要使用比較運算符。通過這些比較運算符,可以判斷表中的哪些記錄是符合條件的。比較結果為真,則傳回 1,為假則傳回 0,比較結果不确定則傳回 NULL。
符号 | 描述 | SELECT語句示例 | 解釋 |
---|---|---|---|
= | 等于 | SELECT * FROM user WHERE id =2; | 查找id=2的該行資訊 |
<>, != | 不等于 | SELECT * FROM user WHERE id !=5; | 查找除了id=5外其他行的資訊 |
> | 大于 | SELECT * FROM user WHERE id >5; | 查找所有id>5的行的資訊 |
< | 小于 | SELECT * FROM user WHERE id <5; | 查找所有id<5的行的資訊 |
>= | 大于等于 | SELECT * FROM user WHERE id >=5; | 查找所有id>=5的行的資訊 |
<= | 小于等于 | SELECT * FROM user WHERE id <=5; | 查找所有id<=5的行的資訊 |
BETWEEN AND | 在兩值之間 | SELECT * FROM user WHERE id BETWEEN 1 AND 10; | 查找id介于5到10之間行的資訊 |
IN | 在集合中 | SELECT * FROM user WHERE id IN (1,3,5); | 查找id為集合中元素1、3、5的行的資訊 |
NOT IN | 不在集合中 | SELECT * FROM user WHERE id NOT IN (1,3); | 查找id不為1、3的所有行的資訊 |
IS NULL | 判斷為空 | SELECT *FROM user WHERE name IS NULL; | 查找name為null的所有行的資訊 |
IS NOT NULL | 非空 | SELECT *FROM user WHERE name IS NOT NULL; | 查找name不為null的所有行的資訊 |
LIKE | 模糊查詢 | SELECT *FROM user WHERE name LIKE “%張%”; | 查找name中有張的所有行的資訊 |
REGEXP | 正則式比對 | SELECT ‘beijing’ REGEXP ‘jing’; |
3、邏輯運算符
邏輯運算符用來判斷表達式的真假。如果表達式是真,結果傳回1。如果表達式是假,結果傳回0。邏輯運算符又稱為布爾運算符。MySQL中支援4種邏輯運算符,分别是與、或、非和異或。
符号 | 描述 | 作用 | SELECT語句示例 |
---|---|---|---|
& 或AND | 與 | 如果所有資料不為0且不為空值(NULL),則結果傳回1;如果存在任何一個資料為0,則結果傳回0; | select 2 and 1; |
丨或OR | 或 | 所有資料中存在任何一個資料為非0的數字時,結果傳回1;如果資料中不包含非0的數字,但包含NULL時,結果傳回NULL;如果操作數中隻有0時,結果傳回0 | select 2 or 0; |
!或 NOT | 非 | “!”或者NOT表示“非”運算。通過“非”運算,将傳回與操作資料相反的結果。如果操作資料是非0的數字,結果傳回0;如果操作資料是0,結果傳回1 | select not 1; |
XOR | 異或 | 當其中一個表達式是真而另外一個表達式是假時,該表達式傳回的結果才是真;當兩個表達式的計算結果都是真或者都是假時,則傳回的結果為假。 | select 1 xor 1; |
4、位運算符
位運算符是在二進制數上進行計算的運算符。位運算會先将操作數變成二進制數,進行位運算。然後再将計算結果從二進制數變回十進制數。
符号 | 作用 | SELECT語句示例 |
---|---|---|
& | 按位與 | |
丨 | 按位或 | |
^ | 按位異或 | |
! | 取反 | |
<< | 左移 | |
>> | 右移 |