字符串函数
| 函数 | 功能 |
|---|
| concat(a,b,c) | 字符串拼接 |
| lower(str) | 将字符串转换为小写 |
| upper(str) | 将字符串转换为大写 |
| lpad(str, n, pad) | 左填充 |
| rpad(str,n pad) | 右填充 |
| trim() | 去除头尾空格 |
| substring(str,start,end) | 截取字符串 |
数字函数
| 函数 | 功能 |
|---|
| ceil(x) | 向上取整 |
| floor(x) | 向下取整 |
| mod(x,y) | 返回x/y的模 |
| rand() | 返回0-1的值 |
| round(x,y) | 保留x小数位y个 |
日期函数
| 函数 | 功能 |
|---|
| curdate() | 当前日前 |
| curtime() | 当前时间 |
| noww() | 当前日前和时间 |
| year(data) | 获取指定data的年份 |
| month(data) | 获取指定data的月份 |
| day(data) | 获取指定data的日期 |
流程函数
| 函数 | 功能 |
|---|
| if(value,t, f) | 如果value是true,返回t,否则返回f |
| ifnull(value1,value2) | 如果value1不为空,返回value1,否则返回value2 |
| case when [value1] then [res1]…else [default] end | 如果val1为true,返回res1,…否则返回默认值 |
| case [expr] when [val1] then [res1]… else [defalut] end | 如果expr的值等于ival1,返回res1…否则返回默认值 |
需求: 查询emp员工列表的员工姓名和地址 (北京 \上海转换成一线城市显示, 其他转换成二线城市显示)
select
name,
case address when '北京' then '一线成熟' when '上海' then '一线城市 else '二线城市' end,
from emp;
select
name,
case when math>90 then '优秀' when math>'60' then '及格' else '不及格' end
from student_Info