mysql 相關函數--高級

BIN(x) 返回 x 的二進制編碼

15 的 2 進制編碼:

SELECT BIN(15); -- 1111
BINARY(s) 將字符串 s 轉換爲二進制字符串
SELECT BINARY "RUNOOB";
-> RUNOOB
CASE expression
    WHEN condition1 THEN result1
    WHEN condition2 THEN result2
   ...
    WHEN conditionN THEN resultN
    ELSE result
END
CASE 表示函數開始,END 表示函數結束。如果 condition1 成立,則返回 result1, 如果 condition2 成立,則返回 result2,當全部不成立則返回 result,而當有一個成立之後,後面的就不執行了。
SELECT CASE 
  WHEN 1 > 0
  THEN '1 > 0'
  WHEN 2 > 0
  THEN '2 > 0'
  ELSE '3 > 0'
  END
->1 > 0
CAST(x AS type) 轉換數據類型

字符串日期轉換爲日期:

SELECT CAST("2017-08-29" AS DATE);
-> 2017-08-29
COALESCE(expr1, expr2, ...., expr_n) 返回參數中的第一個非空表達式(從左向右)
SELECT COALESCE(NULL, NULL, NULL, 'runoob.com', NULL, 'google.com');
-> runoob.com
CONNECTION_ID() 返回服務器的連接數
SELECT CONNECTION_ID();
-> 4292835
CONV(x,f1,f2) 返回 f1 進制數變成 f2 進制數
SELECT CONV(15, 10, 2);
-> 1111
CONVERT(s USING cs) 函數將字符串 s 的字符集變成 cs
SELECT CHARSET('ABC')
->utf-8    

SELECT CHARSET(CONVERT('ABC' USING gbk))
->gbk
CURRENT_USER() 返回當前用戶
SELECT CURRENT_USER();
-> guest@%
DATABASE() 返回當前數據庫名
SELECT DATABASE();   
-> runoob
IF(expr,v1,v2) 如果表達式 expr 成立,返回結果 v1;否則,返回結果 v2。
SELECT IF(1 > 0,'正確','錯誤')    
->正確
IFNULL(v1,v2) 如果 v1 的值不爲 NULL,則返回 v1,否則返回 v2。
SELECT IFNULL(null,'Hello Word')
->Hello Word
ISNULL(expression) 判斷表達式是否爲 NULL
SELECT ISNULL(NULL);
->1
LAST_INSERT_ID() 返回最近生成的 AUTO_INCREMENT 值
SELECT LAST_INSERT_ID();
->6
NULLIF(expr1, expr2) 比較兩個字符串,如果字符串 expr1 與 expr2 相等 返回 NULL,否則返回 expr1
SELECT NULLIF(25, 25);
->
SESSION_USER() 返回當前用戶
SELECT SESSION_USER();
-> guest@%
SYSTEM_USER() 返回當前用戶
SELECT SYSTEM_USER();
-> guest@%
USER() 返回當前用戶
SELECT USER();
-> guest@%
VERSION() 返回數據庫的版本號
SELECT VERSION()
-> 5.6.34

 

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