1. 程式人生 > 其它 >mysql基礎-運算子

mysql基礎-運算子

Mysql-運算子

1.算術運算子

  • MySQL中+只表示數 值相加。如果遇到非數值型別,先嚐試轉成數值,如果轉失敗,就按0計算。(補充:MySQL 中字串拼接要使用字串函式CONCAT()實現)
  • 在MySQL中,一個數除以0為NULL。

2.比較運算子

  • 比較運算子用來對錶達式左邊的運算元和右邊的運算元進行比較,比較的結果為真則返回1,比較的結果 為假則返回0,其他情況則返回NULL。

  • 在使用等號運算子時,遵循如下規則:

    • 如果等號兩邊的值、字串或表示式都為字串,則MySQL會按照字串進行比較,其比較的 是每個字串中字元的ANSI編碼是否相等。
    • 如果等號兩邊的值都是整數,則MySQL會按照整數來比較兩個值的大小。
    • 如果等號兩邊的值一個是整數,另一個是字串,則MySQL會將字串轉化為數字進行比較。
    • 如果等號兩邊的值、字串或表示式中有一個為NULL,則比較結果為NULL。
  • 使用安全等於運算子時,兩邊的運算元的值都為NULL時,返回的結果為1而不是NULL,其他 返回結果與等於運算子相同。

  • 不等於運算子不能判斷NULL值。如果兩邊的值有任意一個為NULL, 或兩邊都為NULL,則結果為NULL。

3.非符號運算子

4.邏輯運算子

  • 邏輯非運算子 邏輯非(NOT或!)運算子表示當給定的值為0時返回1;當給定的值為非0值時返回0; 當給定的值為NULL時,返回NULL。
  • 邏輯與運算子 邏輯與(AND或&&)運算子是當給定的所有值均為非0值,並且都不為NULL時,返回 1;當給定的一個值或者多個值為0時則返回0;否則返回NULL。
  • 邏輯或運算子 邏輯或(OR或||)運算子是當給定的值都不為NULL,並且任何一個值為非0值時,則返 回1,否則返回0;當一個值為NULL,並且另一個值為非0值時,返回1,否則返回NULL;當兩個值都為 NULL時,返回NULL。
  • 邏輯異或運算子 邏輯異或(XOR)運算子是當給定的值中任意一個值為NULL時,則返回NULL;如果 兩個非NULL的值都是0或者都不等於0時,則返回0;如果一個值為0,另一個值不為0時,則返回1。

5.位運算子

6.運算子優先順序