1、算術運算符
mysql採用的算術運算符和python的算術運算符基本相同,包含加(+)、減(-)、乘(*)、除(/)、取餘(%)
符號 | 作用 | sql語句示例 | 解釋 |
---|---|---|---|
+ | 加法運算 | UPDATE `goods` SET num= num+ 1; | 通過 加 數量1更新商品數量 |
- | 減法運算 | UPDATE `goods` SET num= num+ 1; | 通過 減 數量1更新商品數量 |
* | 乘法運算 | SELECT price*num AS `商品總價` FROM `goods` ; | 通過商品單價 乘 數量求出商品總價 |
/或 DIV | 除法運算 |
SELECT total/num AS `商品單價` FROM `goods` ; SELECT good_num DIV add_time AS `除法` FROM `goods` ; |
通過商品總價 除 數量求出商品單價(注:當除數爲0時屬於非法操作,所得值都爲空) |
%或 MOD | 取餘運算 |
SELECT good_num%100 AS `100求餘` FROM `goods`; SELECT MOD(good_num,100) AS `100求餘` FROM `goods`; |
商品數量進行100 求餘 |
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 * FROM user WHERE name REGEXP '傑' | 查找name中有傑的所有行的信息 |
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語句示例 |
---|---|---|
& | 按位與 | |
丨 | 按位或 | |
^ | 按位異或 | |
! | 取反 | |
<< | 左移 | |
>> | 右移 |