十一、常用函数
一、字符串函数
函数
|
功能
|
concat(s1, s2, s3, s4.....sn)
|
把n个字符串按顺序拼接为1个
|
insert(s1, x, len, s2)
|
把s1从x位置开始,len长度的数据替换为s2
|
lower(s)
|
把字符串所有字母小写
|
upper(s)
|
把字符串所有字母大写
|
left(s, n)
|
返回字符串前n个字符
|
right(s, n)
|
返回字符串后n个字符
|
lpad(s1, len, s2)
|
在字符串开头填充s2,使之长度达到len
|
rpad(s1, len, s2)
|
在字符串末尾填充s2,使之长度达到len
|
ltrim( s )
|
去掉字符串开始处的空格
|
rtrim( s )
|
去掉字符串末尾处的空格
|
repeat( s, n )
|
将字符串s 重复n 次
|
replace(s, s1, s2)
|
将字符串s中的s1全部替换为s2
|
reverse(s)
|
将字符串s反转
|
strcmp(s1, s2 ) |
比较字符串s1 和 s2,如果s1 和 s2 相等,返回0,s1 > s2,返回1,否则返回-1
|
substring(s, start, length)
|
从字符串s 的 start 位置开始截取长度为length的子字符串
|
二、数值函数
函数
|
功能
|
abs( x )
|
返回 x 的绝对值
|
mod( x, y )
|
返回 x 除以 y 以后的余数
|
sqrt(x) |
返回 x 的平方根
|
pow(x, y)
|
返回 x 的 y 次方
|
exp( x )
|
返回 e 的 x 次方
|
log( x )
|
返回自然对数为底的 x 的对数
|
max(字段)
|
返回字段中的最大值
|
min(字段)
|
返回字段中的最小值
|
sum(字段)
|
返回字段数值的总和
|
count(字段) |
返回查询的记录总数,可以是字段,也可以是 * 或 1
|
avg(字段)
|
返回一个表达式的平均值
|
ceil( x )
|
返回大于等于x的最小整数
|
floor( x )
|
返回小于等于x的最大整数
|
round( x )
|
返回离x最近的整数
|
truncate( x, y )
|
返回数值x保留到小数点后y位的值,与round区别是不会四舍五入
|
rand()
|
返回0到1的随机数
|
三、日期和时间
函数
|
功能
|
curdate( )
|
返回当前日期
|
curtime( )
|
返回当前时间
|
now( )
|
返回当前日期和时间
|
unix_timestamp(date)
|
返回日期data的unix时间戳
|
from_unixtime( timestemp )
|
返回unix时间戳的日期值
|
year( date )
|
返回date中包含的年份信息
|
month( date )
|
返回date中包含的月份信息
|
monthname( date )
|
返回date中包含月份对应的英文
|
week( date )
|
返回日期date是本年的第几个星期,范围是0-53
|
hour( time )
|
返回time中的小时值
|
minute( time )
|
返回time中的分钟值
|
second( time )
|
返回time中的秒钟值
|
date_format( date, fmt )
|
按表达式 fmt的要求显示日期 date
|
date_add( date, interval expr type )
|
计算起始日期date加上一个时间段后的日期
|
datediff( date1, date2 )
|
计算日期date1 到 date2 之间间隔的天数
|
四、流程函数
函数 |
功能
|
if(value,t,f) |
如果value为真,返回t,否则返回f
|
ifnull( value1, value2 )
|
如果value1不为空,返回value1,否则返回value2
|
case when[value1] then[result] ..else[default] end |
如果value1为真,返回result,否则返回default
|
case[条件] when[value1] then[result]..else[default] end
|
如果条件等于value1,返回result1,否则返回default
|
五、其他函数
函数
|
功能
|
database( ) |
返回当前数据库名
|
version( )
|
返回数据库的版本号
|
user( ) |
返回当前用户
|
inet_aton( ip )
|
返回ip地址的数字表达式
|
inet_ntoa( num )
|
返回数字代表的ip地址
|
password( str ) |
返回字符串str的加密版本
|
md5
|
返回字符串的md5值
|