天天看點

MySQL程式設計-内置函數

說明:x代表一個數字;str表示一個字元串; t, t1, t2均表示一個時間/日期資料;col表示一列,通常就是字段名

數值函數

  1. abs(x)——傳回x的絕對值
  2. ceiling(x)——向上取整
  3. floor(x)——向下取整
  4. pi()——傳回圓周率
  5. pow(x,y)——傳回x的y次方
  6. rand()——傳回0~1的随機數
  7. round(x,y)——傳回參數x的四舍五入的有y位小數的值
  8. sqrt(x)——傳回x的平方根

字元串函數

  1. ascii(str)——傳回str的ascii碼
  2. bin(x)——傳回數字x的二進制表示形式
  3. cast(exp as char)——将exp轉換為char類型
  4. char_length(str)—— 傳回字元數
  5. length(x)傳回位元組數
  6. concat(str1,str2,…)——連接配接字元串
  7. format(x, d)——将數字x格式化為“##,###,###.###”的字元形式,并保留d位。
  8. instr(str, substr)——取得str中第一次出現substr的位置(位置從1開始算起)
  9. lcase(str)、lower(str)——函數把字段的值轉換為小寫
  10. ucase(str)、 upper(str)——函數把字段的值轉換為大寫
  11. left(str, len)—— 取得左邊len個字元
  12. right(str,len)——取得右邊len個字元
  13. lpad(str,len,padstr)——左填充
  14. trim(str)——兩邊截取
  15. repeat(str, count)——重複str字元count次。
  16. reverse(str)——反轉字元
  17. strcmp(str1, str2)——比較兩個字元大小

時間日期函數

  1. addtime(t1,t2)——将時間t2加到時間t1上
  2. curdate()、current_date()——傳回目前的日期
  3. curtime()、current_time()——傳回目前的時間
  4. date(t)——取得t的日期部分(即年月日)
  5. day(t)——取得t的日期數(1-31)
  6. dayname(t)——取得星期名(英文單詞)
  7. dayofweek(t)——取得星期數(1-7)
  8. datediff(t1, t2)——取得t1和t2相差的天數,t1大則為正數
  9. dateadd(datepart,number,date)——datepart為時間機關如day,number為數值,為負數就是減去,date為日期字段
  10. extract(unit FROM date)——函數用于傳回日期/時間的單獨部分,比如年、月、日、小時、分鐘等等
  11. localtime()——同now()
  12. month(t)——取得月份數(1-12)
  13. year(t)——取得年份數

聚合函數

  1. avg(col)——取得一列的平均值
  2. count(col)——取得一列的非null值的個數
  3. min(col)——取得一列的最小值;
  4. max(col)——取得一列的最大值;
  5. sum(col)——取得一列的總和

其他函數

  1. md5(str)——md5加密函數
  2. password(str)——加密函數
  3. sha1(str)——加密函數
  4. user()、current_user()——傳回目前使用者名和主機名
  5. database()——傳回目前資料庫名
  6. version()——傳回目前MySQL版本
  7. ifnull(expr1,expr2) ——如果expr1不是NULL,IFNULL()傳回expr1,否則它傳回expr2。IFNULL()傳回一個數字或字元串值
  8. if(expr1,expr2,expr3) ——如果expr1是TRUE,那麼IF()傳回expr2,否則它傳回expr3。IF()傳回一個數字或字元串值

繼續閱讀