数据库中的函数
1字符串函数
- concat(s1,s2,...,sn) 字符串拼接,将s1,s2,...,sn拼接成一个字符串
- lower(str)将字符串str全部转为小写
- upper(str)将字符串str全部转为大写
- lpad(str,n,pad)左填充,用字符串pad对str的左边进行填充,达到n个字符串长度
- rpad(str,n,pad)右填充,用字符串pad对str的右边进行填充,达到n个字符串长度
- trim(str)去除字符串头部和尾部的空格
- substring(str,start,len)返回从字符串从start位置起的len个长度的字符串
2数值函数
- ceil(x)向上取整
- floor(x)向下取整
- mod(x,y)返回x/y的模
- rand()返回0~1内的随机数
- round(x,y)求参数x的四舍五入的值,保留y位小数
生成一个六位的随机数select lpad(round(rand()*1000000,0),6,'0');
3日期函数
- curdate()返回当前日期
- curtime()返回当前时间
- now()返回当前日期和时间
- year(date)返回指定date的年份
- month(date)返回指定date的月份
- day(date)获取指定date的日期
- date_add(date,interval expr type)返回一个日期/时间值加上一个时间间隔expr后的时间值
- datediff(date1,date2)返回起始时间date1和结束时间date2之间的天数
4流程函数
- if(value,t,f)如果value为true,则返回t,否则返回f
- ifnull(value1,value2)如果value1不为空,返回value1,否则返回value2
- case when [val1] then [res1]...else[default] end 如果val1为true,返回value1,否则返回value2
- case[expr] when [val1]then [res1]...else[default]end