4.2函数
-- 返回 -20的绝对值
select abs(-20);
-- 返回 -20 的平方根,负数没有平方根所以返回空值
Select sqrt(-20);
-- 查询 emp 表中收入最高的员工的工资是平均工资的多少倍,保留 2 位小数
Select round(max(sal)/avg(sal),2) 倍数 from emp;
-- 将三个字符串合并为一个长字符串
select concat('CDA','数据,分析);
-- 参数中包含空值,返回 null
select concat('CDA',null,,’分析’);
-- 参数中包含空白值,不影响结果
select concat('CDA',’’,’分析’);
- 从字符串第 4 位开始,截取长度为 2个字符的字符串
select substring('CDA 数据分析,4,2);
-- 从字符串第 4 位开始,截取到字符串结束
select substring('CDA 数据分析,4);
- 将emp 表中 job 字段中的 manager 替换为 director
select job,replace(job,’manager','director') from emp;
-- 获取日期中的年月日 (日期时间、字符串或者数值均可被识别 )
select year('2020-01-30') 年份,month('20200130') 月份day(20200130)日;
按照日月年的格式返回日期
select date format('20-01-30 12:00:00',%d-%m-%y') 日月年;
-- 计算 2020年1月1日2个月后的日期
select date add("2020-01-01",interval 2 month);
-- 计算员工的工龄 (雇佣日期与当前日期的差 )
select ename,floor(datediff(curdate(),hiredate)/365) as工龄 from emp;
-- 查询各部门员工姓名
select deptno,qroup_concat(ename order by ename separator/) 员工姓名列表 from emp group by deptno;
-- 查询公司所有部门编号
select group_concat(distinct deptno order by deptno) 部门
from emp;
-- 查询每位员工的实发工资 (基本工资 + 奖金)
select ename,sal+ifnull(comm,0) 实发工资
from emp;








暂无数据