1)CONCAT(str1,str2,...):返回來自於參數連結的字符串。若是任何參數是NULL,返回NULL。能夠有超過2個的參數。一個數字參數被變換爲等價的字符串形式。函數
2)LENGTH(str):返回字符串str的長度。編碼
3)LOCATE(substr,str):返回子串substr在字符串str第一個出現的位置,若是substr不是在str裏面,返回0.spa
4)INSTR(str,substr):返回子串substr在字符串str中的第一個出現的位置。orm
5)LEFT(str,len):返回字符串str的最左面len個字符。排序
6)RIGHT(str,len):返回字符串str的最右面len個字符。 索引
7)SUBSTRING(str,pos):從字符串str的起始位置pos返回一個子串。 utf-8
8)TRIM(str):返回字符串str,全部前綴或後綴被刪除了。字符串
9)LTRIM(str):返回刪除了其前置空格字符的字符串str。數學
10)RTRIM(str):返回刪除了其拖後空格字符的字符串str。it
11)REPLACE(str,from_str,to_str):返回字符串str,其字符串from_str的全部出現由字符串to_str代替。
12)REPEAT(str,count):返回由重複countTimes次的字符串str組成的一個字符串。若是count <= 0,返回一個空字符串。若是str或count是NULL,返回NULL。
13)REVERSE(str):返回顛倒字符順序的字符串str。
14)INSERT(str,pos,len,newstr):返回字符串str,在位置pos起始的子串且len個字符長的子串由字符串newstr代替。
1)DAYOFWEEK(date):返回日期date的星期索引(1=星期天,2=星期一, …7=星期六)。
2)WEEKDAY(date):返回date的星期索引(0=星期一,1=星期二, ……6= 星期天)。
3)DAYOFMONTH(date):返回date的月份中的日期,在1到31範圍內。
4)DAYOFYEAR(date):返回date在一年中的日數, 在1到366範圍內。
5)MONTH(date):返回date的月份,範圍1到12。
6)DAYNAME(date):返回date的星期名字。
7)MONTHNAME(date) :返回date的月份名字。
8)QUARTER(date):返回date一年中的季度,範圍1到4。
9)WEEK(date,first):對於星期天是一週的第一天的地方,有一個單個參數,返回date的週數,範圍在0到52。2個參數形式WEEK()容許你指定星期是否開始於星期天或星期一。若是第二個參數是0,星期從星期天開始,若是第二個參數是1,從星期一開始。
10)YEAR(date):返回date的年份,範圍在1000到9999。
11)HOUR(time):返回time的小時,範圍是0到23。
12)MINUTE(time):返回time的分鐘,範圍是0到59。
13)SECOND(time):回來time的秒數,範圍是0到59。
14)DATE_ADD(date,INTERVAL expr type) ,進行日期增長的操做,能夠精確到秒
15)DATE_SUB(date,INTERVAL expr type) ,進行日期減小的操做,能夠精確到秒
16)CURRENT_DATE():以‘YYYY-MM-DD’或YYYYMMDD格式返回今天日期值,取決於函數在一個字符串仍是數字上下文被使用。
17)CURRENT_TIME():以‘HH:MM:SS’或HHMMSS格式返回當前時間值
18)NOW():以‘YYYY-MM-DD HH:MM:SS’或YYYYMMDDHHMMSS格式返回當前的日期和時間
19)DATE_FORMAT() 格式化日期時間函數 date_format()
SELECT date_format(now(),'%Y-%m-%d');
SELECT date_format(now(),'%Y-%m-%d %H:%i:%s');
1)ASCII(s)返回字符串s的第一個字符的ASCII碼;
2)BIN(x)返回x的二進制編碼;
3)HEX(x)返回x的十六進制編碼;
4)OCT(x)返回x的八進制編碼;
5)CONV(x,f1,f2)將x從f1進制數變成f2進制數。
6)CONVERT(s USING cs)函數將字符串s的字符集變成cs,cs能夠是GBK,utf-8,
7)CHARSET(str)查詢字符集 ,使用charset('abc')
8)CAST(x AS type)和CONVERT(x,type)這兩個函數將x變成type類型。
這兩個函數只對BINARY、CHAR、DATE、DATETIME、TIME、SIGNED INTEGER、UNSIGNED INTEGER這些類型起做用。但兩種方法只是改變了輸出值的數據類型,並無改變表中字段的類型。
9)STRCMP(expr1,expr2) 若是字符串相同,STRCMP()返回0,若是第一參數根據當前的排序次序小於第二個,返回-1,不然返回1。
1)CASE WHEN‘
SELECT CASE 11
WHEN 1 THEN 'one'
WHEN 2 THEN 'two'
ELSE 'more' END;
2)IF(expr1,expr2,expr3)
SELECT IF(1>2,2,3);
3) IFNULL(tp.count, 0) checkCount,
若是爲空設置一個默認值
五、數學函數
1)abs(-1)
2)mod(N,M) 返回N被M除的餘數 ; N % M
3)FLOOR(X):返回不大於X的最大整數值。
4)CEILING(X):返回不小於X的最小整數值。
5)ROUND(X) :返回參數X的四捨五入的一個整數。
6)FORMAT(x,n)函數能夠將數字x進行格式化,將x保留到小數點後n位。