天天看點

MySQL資料庫-運算符

目錄

1、算術運算

2、比較運算

3、邏輯運算

4、位運算

1、算術運算

+  、- 、* 、/ 、%。就這5個,和數學中的一樣,沒有類型的轉換。

如果一個數被0除,結果為null。

2、比較運算

MySQL資料庫-運算符

比較的2個特殊規則:

1. 若有一個或兩個參數為null,則比較運算的結果為null。

2. 若一個字元串和一個數字進行比較,mysql自動将字元串轉換成數字,再比。

 = 号可以用于指派,也可以用于判等,判等的話,就是直接比較兩邊的實際内容。

  <=> 安全判等

MySQL資料庫-運算符

 <> 或 !=  不等于判斷

MySQL資料庫-運算符

< 、> 、 >= 、  <= 都能判斷 資料、字元串、表達式,NULL的規則和判等一樣(也就是說不能用于判斷空值NULL)。

IS NULL  和  IS NOT NULL運算 。 用法   IS NULL(參數) 或者 IS NOT NULL(參數),分别判斷參數是否為null,是否不為null。

BETWEEN  ADN運算。 用法  select  guid  between  1111 and  4444。用于判斷是否處于兩者之前,閉區間,比如[1111, 4444]。

LEAST 運算符。用法 least(值1,值2,...,值n) , 傳回其中最小值,如果其中有null,那麼傳回null。

GREATEST運算符 。greatest(值1,值2,...,值n) , 傳回其中最大值,如果其中有null,那麼傳回null。

IN 和 NOT IN。用法  exp  in (exp2)。exp是否在exp2中。

LIKE 比對字元串。expr like 比對條件,比對成功傳回1,比對失敗傳回0,如果expr或比對條件中有為null的,則傳回null。其中%可以比對任何數目的任意字元,_下劃線隻能比對一個任意字元。

REGEXP 比對字元串,這是正規表達式比對法,功能和like一模一樣,隻是通用比對符更多了。

MySQL資料庫-運算符

舉例,^ab代表比對以ab開頭的字元串,ab$ 代表比對以ab結束的字元串。其它的都好了解。 

3、邏輯運算

NOT 或 ! ,表示非運算,0的非是1,非零的非是1,null的非是null。

AND 或 &&,表示與運算,兩個數都要是非零的結果才是1,兩個數都是null的結果是null,其餘情況結果是0。

OR 或 || ,表示或運算,null和非零值的或運算結果是1,否則,其它情況中,隻要是有null,所得結果為null。

XOR,表示異或,有null時,結果為null。

4、位運算

| 代表位或,将參與運算的資料按照二進制進行位或運算,得到一個結果。

& 代表位與,将參與運算的資料按照二進制進行位與運算,得到一個結果。

^ 代表位異或,将參與運算的資料按照二進制進行位異或運算,得到一個結果。

<< 代表位左移,将資料的二進制為左移多少位,溢出的高位被丢棄,低位由0填充。

>> 代表位右移,将資料的二進制為右移多少位,溢出的低位被丢棄,高位由0填充。

~ 代表位取反,将資料的二進制位取反,1變0,0變1。

MySQL資料庫-運算符

繼續閱讀