函数介绍
事先提供好的一些功能可以直接使用
函数可以用在 `SELECT` 语句及其子句
也可以用在 `UPDATE`,`DELETE` 语句当中.
函数分类
字符串函数
数值函数
日期和时间函数
流程函数
其它函数
字符串函数
concat(s1,s2...sn)
将传入的字符连接成一个字符串
任何字符串与 null 进行连接结果都是 null
insert(str,x,y,instr)
将字符串 str 从 x 位置开始,
y 个字符长的子串替换为指定的字符
LOWER(Str) 和 UPPER(str)
将字符串转成小写或大写
LEFT(str,x) 和 RIGHT(str,x)
分别返回字符串最左边的 x 个字符和最右边的 x 个字符
如果第二个参数为 null, 那么不返回任何字符
LPAD(str,n,pad) 和 RPAD(str,n,pad)
用字符串 pad 对 str 最左边或最右边进行填充, 直接到长度为 n 个字符长度
LTRIM(str) 和 RTRIM(str)
去掉字符串当中最左侧和最右侧的空格
TRIM(str)
去掉字符串左右的空格
REPEAT(str,x)
返回 str 重复 x 次的结果
REPLACE(str,a,b)
用字符串 b 替换字符串 str 中所有出现的字符串 a.
SUBSTRING(str,x,y)
返回字符串 str 中第 x 位置起 y 个字符长度的字符
数值函数
`ABS(x)`
返回 X 的绝对值
`CEIL(x)`
小数不为零部分上取整, 即向上取最近的整数
`FLOOR(x)`
小数部分下取整, 即向下取最近的整数
`MOD(X,Y)`
返回 X/Y 的模
`RAND()`
返回 0-1 内容的随机值
日期和时间函数
`CURDATE()`
返回当前日期, 只包含年月日
`CURTIME()`
返回当前时间, 只包含时分秒
`NOW()`
返回当前日期和时间, 年月日时分秒都包含
`UNIX_TIMESTAMP`
返回当前日期的时间戳
`FROM_UNIXTIME(unixtime)`
将一个时间戳转换成日期
`WEEK(DATE)`
返回当前是一年中的第几周
`YEAR(DATE)`
返回所给日期是那一年
`HOUR(TIME)`
返回当前时间的小时
`MINUTE(TIME)`
返回当前时间的分钟
`DATE_FORMAT(date,fmt)`
按字符串格式化日期 date 值
`DATE_ADD(date,interval expr type)`
计算日期间隔
`DATEDIFF(date1,date2)`
计算两个日期相差的天数
流程函数
IF(value,t,f)
如果 value 是真, 返回 t, 否则返回 f
FNULL(value1,value2)
如果 value1 不为空, 返回 value1 否者返回 value2
CASE WHEN THEN END
其他常用函数
`DATABASE()`
返回当前数据库名
`VERSION()`
返回当前数据库版本
`USER()`
返回当前登陆用户名
`PASSWORD(STR)`
对 str 进行加密
`MD5()`
返回 str 的 MD5 值
来源: http://www.jianshu.com/p/1e98c4d77bb1