說明:x代表一個數字;str表示一個字元串; t, t1, t2均表示一個時間/日期資料;col表示一列,通常就是字段名
數值函數
- abs(x)——傳回x的絕對值
- ceiling(x)——向上取整
- floor(x)——向下取整
- pi()——傳回圓周率
- pow(x,y)——傳回x的y次方
- rand()——傳回0~1的随機數
- round(x,y)——傳回參數x的四舍五入的有y位小數的值
- sqrt(x)——傳回x的平方根
字元串函數
- ascii(str)——傳回str的ascii碼
- bin(x)——傳回數字x的二進制表示形式
- cast(exp as char)——将exp轉換為char類型
- char_length(str)—— 傳回字元數
- length(x)傳回位元組數
- concat(str1,str2,…)——連接配接字元串
- format(x, d)——将數字x格式化為“##,###,###.###”的字元形式,并保留d位。
- instr(str, substr)——取得str中第一次出現substr的位置(位置從1開始算起)
- lcase(str)、lower(str)——函數把字段的值轉換為小寫
- ucase(str)、 upper(str)——函數把字段的值轉換為大寫
- left(str, len)—— 取得左邊len個字元
- right(str,len)——取得右邊len個字元
- lpad(str,len,padstr)——左填充
- trim(str)——兩邊截取
- repeat(str, count)——重複str字元count次。
- reverse(str)——反轉字元
- strcmp(str1, str2)——比較兩個字元大小
時間日期函數
- addtime(t1,t2)——将時間t2加到時間t1上
- curdate()、current_date()——傳回目前的日期
- curtime()、current_time()——傳回目前的時間
- date(t)——取得t的日期部分(即年月日)
- day(t)——取得t的日期數(1-31)
- dayname(t)——取得星期名(英文單詞)
- dayofweek(t)——取得星期數(1-7)
- datediff(t1, t2)——取得t1和t2相差的天數,t1大則為正數
- dateadd(datepart,number,date)——datepart為時間機關如day,number為數值,為負數就是減去,date為日期字段
- extract(unit FROM date)——函數用于傳回日期/時間的單獨部分,比如年、月、日、小時、分鐘等等
- localtime()——同now()
- month(t)——取得月份數(1-12)
- year(t)——取得年份數
聚合函數
- avg(col)——取得一列的平均值
- count(col)——取得一列的非null值的個數
- min(col)——取得一列的最小值;
- max(col)——取得一列的最大值;
- sum(col)——取得一列的總和
其他函數
- md5(str)——md5加密函數
- password(str)——加密函數
- sha1(str)——加密函數
- user()、current_user()——傳回目前使用者名和主機名
- database()——傳回目前資料庫名
- version()——傳回目前MySQL版本
- ifnull(expr1,expr2) ——如果expr1不是NULL,IFNULL()傳回expr1,否則它傳回expr2。IFNULL()傳回一個數字或字元串值
- if(expr1,expr2,expr3) ——如果expr1是TRUE,那麼IF()傳回expr2,否則它傳回expr3。IF()傳回一個數字或字元串值