提示:以下是本篇文章正文内容,下面案例可供参考
一、sum求和,avg平均分,round四舍五入
sum、avg、round
(1)查询所有员工工资总和、提成总和
代码如下(示例):
select sum(sal) ,sum(comm) from emp;
(2)查询所有员工工资总和、提成总和、薪资
select sum(sal),sum(comm),sum(sal + ifnull(comm,0)) money from emp;
(3)计算员工的平均工资
select avg(sal),avg(comm) from emp;
±------------±-----------±--------+
| avg(sal) | avg(comm) |
±------------±-----------±--------+
| 2073.214286 | 550.000000 |
±------------±-----------±--------+
(4)平均工资,保留两位小数
select round(avg(sal),0)avg(comm) from emp;
二、max和min
max最大值和min最小值
查询员工表中 ,工资最高的、最低的
代码如下(示例):
select max(sal) max_sal,min(sal) min_sal fromemp;
三、分段函数
分段函数 case
员工表中,根据薪资不一样,给不一样的评论
>4000,NB666
>3000,NB66
>2000,NB6
<2000,ZZ
代码如下(示例):
select
sal,
case
when sal >4000 then "NB666"
when sal >3000 then "NB66"
when sal >2000 then "NB6"
else"ZZ"
end as pj
from
emp;
四、字符串截取
Left(A,4)从左边开始截取4个字符
Right(A,4)从右边开始截取4个字符
我 爱 你
截取
1987-04-19 -> 1987
select left('1987-04-19',4)
(1)获取员工入职年份
代码如下(示例):
select ename,hiredate,left(hiredate,4) from emp;
(2)获取员工入职工龄
select ename ,hiredate,2021 - left(hiredate,4) from emp;