– 数值函数
ABS(X) -- 绝对值
FLOOR(X) -- 向下取整
CEIL(X) -- 向上取整
MOD(N,M) -- 取模
RAND() -- 返回0-1随机数
ROUND(X) -- 四舍五入,取整
ROUND(X,D) -- 四舍五入,指定小数位
TRUNCATE(X,D) -- 截取D位小数位
– 字符串截取
SUBSTRING(str FROM pos FOR len) -- 从pos位置切割len位
SUBSTRING(str FROM pos) -- 从pos位置切割到最后
SUBSTRING(str,pos,len) -- 从pos位置切割len位
SUBSTRING(str,pos) -- 从pos位置切割到最后
LEFT(str,len) -- 取从左开始的len位字符
RIGHT(str,len) -- 取从右开始的len位字符
– 字符串拼接
CONCAT(str1,str2,...) -- 字符串拼接
CONCAT_WS(separator,str1,str2,...) -- 字符串拼接,separator拼接符
– 长度返回
LENGTH(str) -- 字节长度
CHAR_LENGTH(str) -- 字符长度
– 字符串查找
LOCATE(substr,str) -- substr在str第一次出现的位置
POSITION(substr IN str) -- substr在str第一次出现的位置
– 字符串替换
REPLACE(str,from_str,to_str) -- 指定字符替换
INSERT(str,pos,len,newstr) -- 指定位置指定长度替换
– 时间函数
DATEDIFF(expr1,expr2) -- 前一个时间与后一个时间天数之差
DATE_ADD(date,INTERVAL expr unit) -- 指定时间添加指定计量单位的时间,DATE_ADD(NOW(), INTERVAL 2 month)
DATE_SUB(date,INTERVAL expr unit) -- 指定时间减去指定计量单位的时间,DATE_SUB(NOW(), INTERVAL 2 day)
ADDDATE(date,INTERVAL expr unit) -- 指定时间添加指定计量单位的时间,ADDDATE(NOW(), INTERVAL 2 month)
ADDDATE(expr,days) -- 指定时间添加指定天数,ADDDATE(NOW(), 2)
SUBDATE(date,INTERVAL expr unit) -- 指定时间减去指定计量单位的时间,DATE_SUB(NOW(), INTERVAL 2 day)
SUBDATE(expr,days) -- 指定时间减去指定天数,SUBDATE(NOW(), 2)
DATE(NOW()) -- 获取当前时间的日期表示
YEAR(NOW()) -- 获取当前时间年份表示
MONTH(NOW()) -- 获取当前时间月份表示
DAY(NOW()) -- 获取当前时间日表示
– 常用函数
1.IF(expr1,expr2,expr3) -- expr1正确执行expr2,否则执行expr3
select if(10 > 5, 'big', 'small')
2.CASE WHEN -- 条件判断
select
sum(case when sex = 1 then 1 else 0 end) as '男',
sum(case when sex = 0 then 1 else 0 end) as '女'
from user