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;
相关推荐
豆沙沙包?42 分钟前
2025年--Lc171--H175 .组合两个表(SQL)
数据库·sql
养生技术人4 小时前
Oracle OCP认证考试题目详解082系列第48题
运维·数据库·sql·oracle·database·开闭原则·ocp
工作中的程序员7 小时前
hive sql优化基础
hive·sql
杨云龙UP7 小时前
小工具大体验:rlwrap加持下的Oracle/MySQL/SQL Server命令行交互
运维·服务器·数据库·sql·mysql·oracle·sqlserver
阿巴~阿巴~7 小时前
使用 C 语言连接 MySQL 客户端(重点)
服务器·数据库·sql·mysql·ubuntu
清水加冰7 小时前
【MySQL】SQL调优-如何分析SQL性能
数据库·sql·mysql
风跟我说过她7 小时前
CentOS 7 环境下 MySQL 5.7 深度指南:从安装、配置到基础 SQL 操作
sql·mysql·centos
编程充电站pro8 小时前
SQL 面试题解析:如何用多表查询写用户订单统计?
数据库·sql
编程充电站pro19 小时前
SQL 面试高频:INNER JOIN vs LEFT JOIN 怎么考?
数据库·sql
这周也會开心19 小时前
SQL-窗口函数做题总结
数据库·sql