系統(tǒng)函數(shù)是對一些業(yè)務(wù)邏輯的封裝,以完成特定的功能。系統(tǒng)函數(shù)可以有參數(shù),也可以沒有參數(shù)。系統(tǒng)函數(shù)執(zhí)行完成后會(huì)返回執(zhí)行結(jié)果。
系統(tǒng)函數(shù)的分類如下:
1.數(shù)值計(jì)算函數(shù)
abs(X),cos(X),sin(X),acos(X),asin(X):返回表達(dá)式的絕對值,余弦值,正弦值,反余弦值和反正弦值。
round(X,D):將數(shù)值X按照D指定的向小數(shù)點(diǎn)前后截?cái)啵珼取值范圍為[-30,30]間的整數(shù)。
pow(X,Y):等同于power(X,Y),計(jì)算X的Y次方。
2.字符處理函數(shù)
concat(str[,…]),concat_ws(separator,str1,str2,…):拼接一個(gè)或多個(gè)字符串。第一個(gè)函數(shù)無分隔符,第二個(gè)函數(shù)可以指定分隔符連接。
hex(str):返回十六進(jìn)制值的字符串表示形式。
insert(str,pos,len,newstr),replace(str,src,dst):字符串插入和字符串替換函數(shù)。
instr(str1,str2):字符串查找函數(shù),返回要查找的字符串首次在源字符串中出現(xiàn)的位置。
3.時(shí)間日期函數(shù)
date_format(date,format):格式化日期函數(shù),根據(jù)format轉(zhuǎn)化為需要的格式。
extract(field from datetime):從指定的日期(datetime)中提取指定的時(shí)間字段(field),按指定的格式截取輸入的日期數(shù)據(jù)。


4.類型轉(zhuǎn)換函數(shù)
if(cond,exp1,exp2),ifnull(exp1,exp2),nullif(exp1,exp2) :條件判斷函數(shù)。
nullif函數(shù)中expr1和expr2應(yīng)該為相同數(shù)據(jù)類型,或能隱式轉(zhuǎn)換成相同數(shù)據(jù)類型,否則校驗(yàn)報(bào)錯(cuò)。
cast(value as type)/convert(value,type):類型轉(zhuǎn)換函數(shù)
Type取值:binary,char(),date,time,datetime,decimal,signed,unsigned
5.系統(tǒng)信息函數(shù)
系統(tǒng)信息函數(shù)用來查詢MySQL 數(shù)據(jù)庫 的系統(tǒng)信息。
version():返回?cái)?shù)據(jù)庫的版本號
connection_id():返回服務(wù)器的連接數(shù)
database():返回當(dāng)前數(shù)據(jù)庫名稱
schema():返回當(dāng)前schema名稱
user(),system_user(),session_user(),current_user():返回當(dāng)前用戶名稱
last_insert_id:返回最后生成的auto_increment的值