SQL函数
字符串操作函数
concat(s1,s2,s3) 拼接 lower(str) upper(str) 小写和大写 left(str,x) 返回str最左侧x个字符 right(str,y) 返回str最右侧x个字符 lpad(str,n,pad) 用字符串pad对str最左侧填充,直到n个长度 lpad(str,n,pad) 用字符串pad对str最右侧填充,直到n个长度 ltrim(str) 除去左空格 rtrim(str) 除去右空格 replace(str,a,b) 在字符串str中,用字符传b代替a trim(str) 去除前后空格 substring(str,x,y) 返回str字符串的x位置起,y个长度的字符串
数值函数
abs(x) 求绝对值 ceil(x) 返回大于x的最小整数 floor(x) 返回小于x的最大整数 mod(x,y) 返回x/y的模 rand() 返回0-1的随机数 round(x,y) 返回x的四舍五入,位数为y truncate(x,y) x的小数位数变成y
日期时间函数
curdate() 当前日期 curtime() 当前时间 now() 当前日期和时间 week() 当前一年的第几周 year() 当前年份 hour() 当前小时 minute() 当前分钟 monthname() 当前月份名 date_format(date,fmt) 按照fmt格式化date date_add(date,interval expr type) 返回(当前时间+时间间隔)的时间 datediff(expr,expr2) 起止时间的天数 详细:date_add(date,interval expr type) expr是表达式,type是类型 type可以是hour , minute , second(秒) , year , month , day 等等... 注意也可以是负数,表明是date之前的日期
流程函数
if(value,t,f) 如果查询的value为真,返回t,否则f ifnull(value1,value2) 如果查询的结果value1不为空,返回value1,否则返回value2 case when value1 then result1 else default end 如果value1是真,返回result1,否则返回default case expr when value1 then result1 else default end 如果expr=value1,返回result1,否则返回default
其他
user() 返回当前登录用户名 inet_aton(ip) 返回ip地址的数字表示 inet_ntoa(num) 返回数字代表的ip地址 password(str) 返回str的加密版本 md5(str) 返回str的md5加密值