数学函数
ABS(X) -----------------返回x的绝对值
MOD(N,M)或%--------返回N被M除的余数
FLOOR(X)--------------(向下取整)返回小于或等于X的最大整数值。
CEIL(X)-------------(向上取整)返回大于或等于X的最小整数值。
ROUND(X) ----------------返回参数X的四舍五入的一个整数。
字符串函数
CONCAT(str1,str2,...)---------------返回来自于参数连结的字符串。如果参数含有是NULL类型,则函数返回NULL。(可以有超过2或以上的参数,一个数字参数被变换为等价的字符串形式)
concat函数用法
CONCAT_WS(str1,str2,str3,...)------------第一个参数作为分隔符,返回连接的字符串
concat_ws用法
LENGTH(str)---------返回str的长度
length用法
INSTR(str1,str2)-----------返回str2出现在str1的位置
instr用法
LEFT(STR,NUM)/RIGHT(STR,NUM)--------返回左边/右边num个字符串
SUBSTR(STR,START,LENGTH)----------截取字符串,start截取位置,length截取长度
TRIM/STRIM/RTRIM(STR)-----------除去空白字符
REVERSE(str)-------------------返回颠倒字符顺序的字符串str。
日期时间函数
MONTH(date)----------------date的月份,范围1到12。
DAYNAME(date)----------------date的星期名字。
DAY(date)----------------date的日期。
WEEKDAY(date)--------------星期的索引
YEAR(date)--------------------date的年份,范围在1000到9999。
HOUR(time)---------------------time的小时,范围是0到23。
MINUTE(time)------------------time的分钟,范围是0到59。
SECOND(time)------------------time的秒数,范围是0到59。
now()--------------------------------返回当前日期格式为 0000-00-00 00:00:00
CURRENT_TIME(),CURRENT_TIMESTAMP(),CURRENT_TIMESTAMP
TIMESTAMPADD(type,num,date)-------------------日期的加减(不知道如何描述,直接看例子吧)
UNIX_TIMESTAMP()-----------------将日期格式转化为时间戳
FORM_UNIXTIME()-----------------将时间戳转化为日期(%Y-%m-%d %H:%i:%S)
流程控制函数
条件语句 if(condition,a,b)
if 函数可以嵌套使用
case when
CASE WHEN
IFNULL(expr1,expr2)
假如expr1 不为 NULL,则 IFNULL() 的返回值为 expr1; 否则其返回值为 expr2。