函数:是指一段可以直接被另一段程序调用的程序代码
函数种类:
常用函数:
函数 | 功能 |
---|---|
concat(s1,s2,…,sn) | 字符串拼接,将s1,s2,…sn拼接成一个字符串 |
lower(str) | 将字符串全部转为小写 |
upper(str) | 将字符串全部转为大写 |
lpad(str,n,pad) | 左填充,用字符串pad对str的左边进行填充 |
rpad(str,n,pad) | 右填充,用字符粗pad对str的右边进行填充 |
trim(str) | 去掉字符串头部和尾部的空格 |
substring(str,start,len) | 返回从字符串str位置起的len个长度的字符串 |
replace(column,source,replace) | 替换字符串 |
使用示例:
1、拼接:
SELECT CONCAT('Hello', 'World');
2、小写
SELECT LOWER('Hello');
3、大写
SELECT UPPER('Hello');
4、左填充
SELECT LPAD('01', 5, '-');
5、右填充
SELECT RPAD('01', 5, '-');
6、去除空格
SELECT TRIM(' Hello World ');
7、分隔(起始索引为1)
SELECT SUBSTRING('Hello World', 1, 5);
常用函数:
函数 | 功能 |
---|---|
CEIL(x) | 向上取整 |
FLOOR(x) | 向下取整 |
MOD(x,y) | 返回x/y的模 |
RAND(x) | 返回0~1内的随机数 |
RPUND(x,y) | 求参数x的四舍五入值,保留y位小数 |
常用函数:
函数 | 功能 |
---|---|
CURDATE() | 返回当前日期 |
CURTIME() | 返回当前时间 |
NOW() | 返回当前日期和时间 |
YEAR(date) | 获取指定date的年份 |
MONTH(date) | 获取指定date的月份 |
DAY(date) | 获取指定date的日期 |
DATE_ADD(date, INTERVAL expr type) | 返回一个日期/时间值加上一个时间间隔expr后的时间值 |
DATEDIFF(date1, date2) | 返回起始时间date1和结束时间date2之间的天数 |
使用示例:
date add:
SELECT DATE_ADD(NOE(),INIERVAL 70 YEAR);
常用函数:
函数 | 功能 |
---|---|
IF(value,t,f) | 如果value为true,则返回t,否则返回f |
IFNULL(value1,value2) | 如果value1不为空,返回value1,否则返回value2 |
CASE WHEN[val1] THEN [res1] …ELSE[default] END | 如果val1为true,返回res1,…否则返回default默认值 |
CASE[] WHEN[] THEN []…ELSE[default] END | 如果expr的值等于val1,返回res1,…否则返回default默认值 |
例子:
Select name (case when age > 30 then '中年' else '青年' end) from employee;
select name,(case workaddress when '北京市' then ‘一线城市’ when '上海市' then '一线城市' else '二线城市' end) as '工作地址'