字符串函数
函数 | 功能 |
---|
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