MySql基础34题写题记录(30-34)

30、列出各个部门的MANAGER(领导)的最低薪金

sql 复制代码
Select min(sal),deptno

From emp

Where job = 'manager'

Group by deptno;

31、列出所有员工的年工资,按年薪从低到高排序

要用ifnull处理,要不然算出来都是空,按道理取个别名,再最后排序的时候用别名效率应该高一些

sql 复制代码
Select e.ename,(ifnull(comm,0) + sal) * 12 yearsal

From emp e

Order by yearsal asc;

32、求出员工领导的薪水超过3000的员工名称与领导名称

sql 复制代码
Select e.ename,a.ename

From emp e

Join emp a

On e.mgr = a.empno

Where a.sal > 3000;

33、求出部门名称中,带'S'字符的部门员工的工资合计、部门人数

看错题了,是部门名字里面带s的

先求部门里面带S的

Select deptno,dname

From dept

Where ename like '%s%'

再求这个表里的部门的员工工资合计,部门人数

sql 复制代码
Select d.dname,count(e.ename),sum(e.sal)

From emp e

Right join (Select deptno,dname

From dept

Where dname like '%s%') d

On e.deptno = d.deptno

Group by d.deptno;

34、给任职日期超过30年的员工加薪10%

这里要用更新语句

sql 复制代码
Update emp set sal = sal *1.1 where TimeStampDiff(year,hiredate,now()) > 30;
相关推荐
山峰哥3 小时前
SQL慢查询调优实战:从全表扫描到索引覆盖的完整复盘
前端·数据库·sql·性能优化
hhb_6186 小时前
PL/SQL核心技术难点梳理与实战应用案例解析
数据库·sql
TDengine (老段)9 小时前
TDengine 一条 SQL 从客户端到执行完成的全链路
大数据·数据库·sql·物联网·时序数据库·tdengine·涛思数据
唐青枫11 小时前
别只会写 IF:MySQL CASE WHEN 条件判断实战详解
sql·mysql
zhishijike13 小时前
全国行政区划sql(省市区)
数据库·sql·mysql
阳光九叶草LXGZXJ14 小时前
达梦数据库-学习-52-DmDrs参数介绍(Manager模块)
linux·运维·数据库·sql·学习
网管NO.115 小时前
SQL 是什么?
数据库·sql
码上有光17 小时前
MySQL基础操作——约束(下)——期末快速复习
数据库·sql·mysql·期末快速复习
yzs871 天前
SQL Sever Pragmatic Bitmap过滤技术解析
数据库·sql
Full Stack Developme2 天前
SQL发展历史
数据库·sql