单行函数
字符函数
- LENGTH(a) 返回a的字节个数
- CONCAT(a,b,c,…) 拼接字符串
- UPPER(a) 返回a的大写
- LOWER(a) 返回a 的小写
- USBSTR(a, b, c) 返回从索引 b 开始截取a长度为c的字符串(mysql中索引从1开始)
- INSTR(a,b) 返回b在a中第一次出现的索引,如果找不到,返回0
- TRIM(s from a) 返回去掉前后s的a, 默认为 空格
- LPAD(a, b, c) 用c左填充a, 使a的长度为b。
- RPAD(a, b, c) 用c右填充a, 使a的长度为b。
- REPLACE(a, b, c) 在a中,用 c 替换 b
数学函数
- ROUND(x, a) 四舍五入 小数点后保留a位
- CEIL(x) 向上取整
- FLOOR(x) 向下取整
- TRUNCATE(x, a) 小数点后截断 a 位
- MOD(a, b) 取余
日期函数
- NOW() 返回当前系统日期时间
- CURDATE() 返回当前系统日期
- CURTIME() 返回当前系统的时间
- 获取指定时间的 年(YEAR), 月(MONTH), 日(DAY), 小时(HOUR), 分钟(MINUTE), 秒(SECOND)
- str_to_date(tiem, format) 将字符转换为日期
- date_format(time, format) 将日期转换为字符
其他函数
- version() 版本号
- database() 查看当前数据库
- user() 查看当前用户
流程控制函数
- if(bool, v1, v2) 如果bool 为True, 返回v1, 否则返回v2
- case a when v1 then v2 when v3 then v3 … else v4 end switch 函数
- case when 条件1 then 要显示的值1或语句1 … else 值n或语句n end
分组函数
用作统计使用,又称为 聚合函数 或 统计函数 或 组函数
- sum 求和
- avg 平均值
- max 最大值
- min 最小值
- count 计算非null值的个数
注意:
sum,avg 处理数值型
max, min, count 可以处理任何类型
以上分组函数都忽略null值