字符函数
查看字符集
SHOW VARIABLES like '%char%'
LENGTH(str) 字节长度
select LENGTH('旺旺')
concat() 字符串连接
select concat('身体','健康','长寿')
UPPER() LOWER() 大小写转换
select upper('abcdefg')
select LOWER('ABCDEFG')
TRIM([remstr FROM] str) 去除首尾 指定的内容,默认是空格
select LENGTH(trim(" wang ")) as out_put
select trim('a' FROM 'aaawangaaa') as out_put
LPAD(str,len,padstr) 在左边填充指定的长度 RPAD(str,len,padstr)在右边 如字符长度大于指定长度 截取(左->右)
select LPAD("王",10,'-')
select RPAD("王",10,'*')
select LPAD("网吧通宵打游戏",3,'-')
SUBSTR() 截取 从第5位开始到结束
select SUBSTR("好好学习天天向上",5)
SUBSTR() 截取 从第一位开始,一共4位
select SUBSTR("好好学习天天向上",1,4)
INSTR(str,substr) 查找指定字符首次出现的位置,如没有返回0
select INSTR("五十六个民族,五十六支花","五十")
REPLACE() 替换
select REPLACE('我爱妈妈','妈妈','谷粒')
数学函数
四舍五入 (绝对值四舍五入后加正负号) 可以指定小数点后位数
select ROUND(-2.26)
select ROUND(-2.26,1)
向上取整 (大于等于该数的最小整数)
select CEIL(-2.36)
向下取整 (小于等于该数的最大整数)
select FLOOR(-1.653)
取模 MOD(a,b) = (a - a/b*b)
select MOD(-10,-3)
绝对值
select ABS(19)
日期函数
获取当前时间
select NOW()
获取年月日
select CURDATE();
获取时分秒
select CURTIME();
将字符串安装给定的格式转为日期型(日期格式必须和字符串格式一致)
select STR_TO_DATE('1991-03-20','%Y-%m-%d')
将日期型安装指定的格式转为字符串
select DATE_FORMAT(NOW(),'%Y年%m月%d日')
获取年
select YEAR(NOW())
获取月
select MONTH(NOW())
获取日
select DAY(NOW())
获取小时
select HOUR(NOW())
获取分
select MINUTE(NOW())
获取秒
select SECOND(now())
其他函数
查看用户
select user()
查看版本号
select VERSION()
查看库
select DATABASE()
流程控制函数
IF(expr1,expr2,expr3) expr1 为true 返回 expr2 否则返回 expr3
select IF(10<5,"正确","错误")
case when then 当比较等值时
select
case 2
when 1 then "哈"
when 10 THEN "呵"
else "嘻"
end
比较表达式
select
case
when 1 >2 then 1
when 2 > 1 then 2
else 3
end
IFNULL(expr1,expr2) expr1 为null 是返回 expr2
select IFNULL(NULL,0)