MySQL常用函數

1.數學函數

ABS(X) 絕對值
CEIL(X) 向上取整
FLOOR(X) 向下取整
RAND(X) 0-1的隨機數
ROUND(X) 距離x最近的整數
ROUND(X,Y) 保留x後y位的小數,在截斷時使用四捨五入
POW(X,Y) y次方
SQRT(X,Y) 開y次方根、
2.字符函數

CHAR_LENGTH(X) 取字符長度“我是L”=>3
LENGTH(X) 取字節長度“我是L”=>6
CONCAT(A1,A2) 連接兩個字符
UPPER(X) LOWER(X) 大寫、小寫
LEFT(X,N) RIGHT(X,N) 從左/右邊開始取n個字符
REPLACE(S,S1,S2) 把字符串s中的s1換成s2
MID(S,N,LN) 從字符串s中的n開始截取ln長度的子串
REVERSE(X) 字符串s反轉過來
3.日期函數

常用函數

CURDATE() 返回當前日期不帶時間
CURTIME() 返回當前時間不帶日期
NOW() 返回當前時間+日期
轉換用函數

返回給定日期中的月份
MONTH(D) d中的這一天是幾月份1-12
MONTHNAME(D) d中的這一天的月份的名字英文名字
返回給定日期中的星期
DAYNAME(D) d中的這一天是星期幾 英文名字
DAYOFWEEK(D) d中的這一天是星期幾 1星期日 2星期一
WEEKDAY(D) d中的這一天是星期幾 0星期一 1星期二
WEEK(D) d中的這一天是第幾個星期在全年中
返回給定日期中的詳細信息
DAYORYEAR(D) d中是那一年
DAYOFMONT(D) d中是那一個月
QUARTER(D) d中是那個季度
HOUR(D) d中的小時值
MINUTE(D) d中的分鐘值
SECOND(D) d中的秒值
時間的計算
TIME_TO_SEC(T) 將給定的時間t轉化成秒
SEC_TO_TIME(T) 將以秒爲單位的時間轉化爲時分秒格式
DATEDIFF(D1,D2) 計算d1與d2之間相隔的天數
ADDDATE(D,N) 計算起始日期加上一個時間段後的日期 n默認是天也可以時interval 5 minute
SUBDATE(D,N) 日期減去n天后的日期
SUBDATE(D,INTERVAL expr type) 日期減去一個時間段後的日期值可以是INTERVAL 10 minute
DATA_FORMAT(D,F) 按表達式f的要求顯示日期'%Y-%m-%d %r'
TIME_FORMAT(D,F) 按表達式f的要求顯示時間'%r'
4.條件函數

IF(EXPR,V1,V2) 如果表達exper式成立即3>2滿足條件則返回結果v1否則v2
IF(1>0,正確,錯誤) 如果表達式是null則返回v2否則v1
IFNULL(V1,V2) 如果v1的值是空則返回v2,否則返回v2
CASE
CASE
  WHEN e1
  THEN v1
  WHEN e2
  THEN e2
  ...
  ELSE vn
END
5.加密函數

PASSWORD(STR) 該函數可以對字符串str進行加密,一般情況下,PASSWORD(str)用於給用戶的密碼加密。
MD5 MD5(str)函數可以對字符串str進行散列,可以用於一些普通的不需要解密的數據加密。
ENCODE(STR,PSWD_STR)與DECODE(CRYPT,PSWD_STR) ENCODE函數可以使用加密密碼pswd_str來加密字符串str,加密結果是二進制數,需要使用BLOB類型的字段保存。該函數與DECODE是一對,需要同樣的密碼才能夠解密。

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