concat 拼接: concat(str1, '', str2) 将str1与str2两个字段用''拼接在一起 substr 截取子串: substr('hahaha',3) = 'haha' substr('hahah',1,4) = 'haha' 4为长度 upper 转换成大写: upper('haah') lower 转换成小写 trim 去前后指定的空格和字符,默认为去空格,trim('a','aahahahaca') = 'hahahac' ltrim 去左边空格 rtrim 去右边空格 replace 替换 lpad 左填充: lpad('str',10,'') 总长度为10 str长度不够时使用填充 rpad 右填充 instr 返回子串第一次出现的索引(第一次匹配) 若没找到 返回0 length 获取字节个数(字符串长度)
2、数学函数
round: 四舍五入 round(1.65) = 2 round(1.765,2) = 1.76 表示保留2位小数 rand 随机数 floor 向下取整 返回小于等于该参数的最大整数 ceil 向上取整 返回大于等于该参数的最小整数 mod 取余 mod(10,3) truncate 截断 truncate(1.69999,1) =1.6 1表示小数点后截断几位,非四舍五入规则
3、日期函数
now 当前系统日期+时间 now() curdate 当前系统日期 curdate() curtime 当前系统时间 curdate() str_to_date 将指定格式字符转换成日期 将前台传来的时间格式转换成mysql中的日期格式
date_format 将日期转换成字符 将具体日期转换成规定格式显示出来 年 year(now()) 月 month(now()) 月名 monthname(now()) 时间日期字符: %Y 四位的年份 %y 两位的年份 %m 月份(01,02,03,...,11,12) %c 月份(1,2,3,...,11,12) %d 日(01,02,...) %H 小时(24小时制) %h 小时(12小时制) %i 分钟(00,01...59) %s 秒(00,01,02...59)
if 处理双分支
if(1<2,'我是1',‘我是2’) 次语句最终返回 '我是1'
多重if
case
when case1 then 执行语句1
when case2 then 执行语句2
when case3 then 执行语句3
else 执行语句4
end as 新变量
case语句 处理多分支
case 字段或表达式
when case1 then 执行语句1
when case2 then 执行语句2
when case3 then 执行语句3
else 执行语句4
end as 新变量
更多见: