SQL函数
一、单行处理函数(数据处理函数)
特点:一个输入对应一个输出。
与单行处理函数相对的是多行处理函数:对各输入对应一个输出。
1.常见的单行处理函数
2.lower upper转换小写大写
(1)将学生姓名转换为小写
select lower(name) from student
(2)将学生姓名改为大写
select upper(name) from student
3.substr 取子串
substr(被截取的字符串,起始下标,截取的长度)
起始下标是从1开始
用法如下:
select substr(rid,1,2) as rid from t_role;
4.concat进行字符串的拼接
将学生姓名首字母大写
select concat(upper(substr(name,1,1)),substr(name,2,length(name)-1)) as name from student;
5.length取长度
求学生姓名的长度
select length(name) name from student;
6.trim 去空格
去name前后空格:
trim(name)
7.round四舍五入
round(123.36,0) 0:代表保留到整数位, 1:保留一位小数
8.rand()随机数
生成100以内的随机数
*round(rand()100,0)
9.ifnull
(1)数据库中只要有null参与的数学运算,最终结果一定是null,因此为了避免这个现象我们需要使用 ifnull
(2)ifnull的用法:ifnull(数据,被当作哪个值)。如果数据为 null 的时候,就把数据当作哪个值
例如 salay 为 null 时,就把 salay 当作 0
select name, ifnull(salay,0) from t_role;
10 case…when…then…when…then…else…end
当员工的工作岗位是manager时,工资上调10%,当工作岗位是salesman时,工资上调50%(注意:不修改数据库,只是显示)
select name,job,(case job when ‘manager’ then salay1.1 when ‘salesman’ then salay1.5 else salay end) as newsalay from t_role;