MYSQL運算符

MYSQL運算符

算術運算符
這裏寫圖片描述

1.除法運算和求餘運算中,x2不能爲0或者NULL,否則運算結果爲空。在進行算術運算時,應注x2參數值的合法性。
eg:
這裏寫圖片描述

比較運算符(看是否符合條件)
1.運算符‘=’
用來判斷數字,字符串,表達式等是否相等,相等返回1,不相等返回0,不能用與對NULL值的判斷。
當用來判斷兩個字符時,是根據字符的ascll碼。
eg:
這裏寫圖片描述
這裏寫圖片描述
2.運算符‘!=’和‘<>’
用來判斷數字,字符串,表達式等是否不相等,不相等返回1,相等返回0,也不能用與對NULL值的判斷。
eg:這裏寫圖片描述

3.運算符’<=>’
作用和‘=’ 一樣,用來判斷操作符是否相等,不過這個可以用來判斷NULL值。’<=>’可以實現‘=’的所有功能,但一般不用<=>
eg:
這裏寫圖片描述
4.運算符‘>’
當左操作符大於右操作符時,返回1,否則返回0.不能用與對NULL值的比較。
當判斷一個字符串是否相等時,先判斷第一個字符,如果第一個字符相等再判斷下一個字符,直到比較出結果。
eg:
這裏寫圖片描述
5.運算符‘>=’
當左操作符大於等於右操作符時,返回1,否則返回0.不能用與對NULL值的比較。
eg:
這裏寫圖片描述
6.運算符‘<’
當左操作符小於右操作符時,返回1,否則返回0.不能用與對NULL值的比較。
eg:
這裏寫圖片描述
7.運算符’<=’
當左操作符小於等於右操作符時,返回1,否則返回0.不能用與對NULL值的比較。
eg:這裏寫圖片描述

8.運算符‘IS NULL’
若操作數爲空值,返回1,否則返回0.
eg:
這裏寫圖片描述
當使用 > ,<, !=,<>,=,>=,<=等操作符時不能用於對NULL值操作,因此要對空值操作,必須使用<=>或is not null,is null
NULL 和’NULL‘是不一樣的,後者表示一個由字符組成的字符串。

9.運算符‘between and’
判斷操作數是否在某個取值範圍內,在範圍內返回1否則返回0
eg:
這裏寫圖片描述
10.運算符’In’
判斷操作數是否在某個集合中。是返回1否則返回0
eg:
這裏寫圖片描述
11.運算符 ‘like’
匹配字符串成功,則返回1,否則返回0
eg:
這裏寫圖片描述
12.運算符 regexp
使用正則表達式匹配字符串,如果匹配成功返回1,否則返回0
eg:
這裏寫圖片描述
beijing以‘b’開頭,以‘g’結尾,返回1,由於beijing中不包含‘y’,所以返回0

邏輯運算符(判斷真假)
表達式爲真,返回1,表達式爲假,返回0;
1.與運算
&& 或者 AND表示與運算。所有操作數不爲0且不爲NULL時,返回1,有一個爲0則返回0.有一個爲空則返回NULL.負數和大於0的數都等價爲1.
形式: A && B && C && D
eg:
這裏寫圖片描述
2.或運算
|| 或者 or 表示或運算。所有操作數只要有存在任何一個不爲0或NULL時,返回1。
形式: A || B || C || D
eg:這裏寫圖片描述
3.非運算符
! 或 not表示非運算符。通過該運算符返回與操作數相反的結果。如果操作數爲0,返回值爲1,如果操作數爲1,返回值爲 0.如果操作數爲NULL,返回值爲NULL.
非運算符的操作數只有一個,形式 !A.
eg:這裏寫圖片描述
4.異或運算符
XOR表示異或運算符。當操作數中有一個爲NULL,返回值爲NULL,當操作數都爲0或者都爲1,返回值爲0,當操作數有一個爲0或爲1時,返回值爲1.
形式:A XOR B XOR C XOR D .當有多個操作數時,從左往右依次運算。
在進行異或運算時,所有大於-1小於1的數,都被認爲是邏輯數字0,其他被認爲是1.
邏輯相同返回0,邏輯不同返回1
eg:這裏寫圖片描述

位運算符*(在二進制數上進行計算的運算符,先將操作數變成二進制,再進行位運算)*
位運算符的操作數必須是十進制,否則計算結果是錯誤的,十進制和二進制的轉換是由數據庫系統實現的。使用CONV()函數將操作數可轉化爲十進制。
1.按位與(&)
將其他進制的數換爲二進制,1和1得1,0和0得0.1和0得0.運算完之後再轉換爲原來的進制。
eg:這裏寫圖片描述
2.按位或(|)
將其他進制的數換爲二進制,1和任何得1,0和0得0.運算完之後再轉換爲原來的進制。
eg:
這裏寫圖片描述
3.按位取反(~)
將其他進制的數換爲二進制,1變爲0,0變爲1.運算完之後再轉換爲原來的進制。
使用bin()函數可以查看二進制數。
eg:
這裏寫圖片描述
這裏寫圖片描述
4.按位異或(^)
將其他進制的數換爲二進制,相同的數異或爲0.不同的數異或爲1.運算完之後再轉換爲原來的進制。
eg:
這裏寫圖片描述

5.按位左移(<<)按位右移(>>)
將其他進制的數換爲二進制,m << n 表示m左移n位,右邊補0;
m >> n 表示m右移n位。左邊補0.被移出的直接丟棄。運算完之後再轉換爲原來的進制。
這裏寫圖片描述

運算符的優先級
這裏寫圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章