mysql练习1

-- 1.查询出部门编号为BM01的所有员工
SELECT* 
FROMemp e 
WHEREe.deptno = 'BM01';
-- 2.所有销售人员的姓名、编号和部门编号。
SELECTe.empname,e.empno,e.deptno 
FROMemp e 
WHEREe.empstation = "销售人员";-- 3.找出奖金高于工资的员工。
SELECT* 
FROMemp2 
WHEREsal < comm;
-- 4.找出奖金高于工资60%的员工。
SELECT * FROM emp2 WHERE comm > ( sal * 0.6 );
-- 5.找出部门编号为10中所有经理,和部门编号为20中所有销售员的详细资料。
select 
* 
from emp2
where (deptno = 10 and job = 'MANAGER') or (deptno = 20 and job = 'SALESMAN');
--    6.找出部门编号为10中所有经理,部门编号为20中所有销售员,还有即不是经理又不是销售员但其工资大或等于20000的所有员工详细资料。
select 
* 
from emp2
where (deptno = 10 and job = 'MANAGER') or (deptno = 20 and job = 'SALESMAN')
or (job not in ('MANAGER','SALESMAN') and sal >= 2000);-- 7.无奖金或奖金低于1000的员工。
select * from emp2 where comm is null or comm < 1000;-- 8. 查询名字由三个字组成的员工。
-- 注意:一个汉字占三个字节
select * from emp2 e where e.ename like '___';-- 9.查询2023年入职的员工。
select * from emp2 where YEAR(hiredate) like '2023%';-- 10. 查询所有员工详细信息,用编号升序排序
select * from emp2 order by empno asc;-- 11. 查询所有员工详细信息,用工资降序排序,如果工资相同使用入职日期升序排序
select * from emp2 e order by e.sal desc,e.hiredate;-- 12.查询每个部门的平均工资
select avg(e.sal) d.deptname from emp2 e,dept d
group by d.deptno
on e.deptno = d.deptno;select avg(sal),deptno,dept from emp2 
group by deptno;	-- 13.查询每个部门的雇员数量
select
deptno,count(deptno)
from emp2
group by deptno;-- 	14.查询每种工作的最高工资、最低工资、人数
select max(sal),min(sal),count(job)
from emp2
group by job;-- 18.列出工资比ALLEN高的所有员工
select * from emp2 where sal > (select sal from emp2 where ename = 'ALLEN');-- 19.列出所有员工的姓名及其直接上级的姓名
select
e1.ename,
e2.ename
from emp2 e1,emp2 e2
where e1.mgr = e2.empno-- 20.列出受雇日期早于直接上级的所有员工的编号、姓名、部门名称
select
e1.ename,
e2.ename
from emp2 e1,emp2 e2
where e1.mgr = e2.empno and e1.hiredate < e2.hiredate;-- 21.列出部门名称和这些部门的员工信息,同时列出那些没有员工的部门
select deptname,e.* from dept d,emp2 e where  count(dept) is null;-- 22.列出所有文员(CLERK)的姓名及其部门名称,部门的人数
select e.ename,d.deptname,d.deptno
from emp2 e
join dept d
where e.job = 'CLERK';-- 23.列出最低薪金大于1500的各种岗位及从事此岗位的员工人数
SELECT e.job,min(sal) min_salary,count(e.empno)
from emp2 e
group by e.job
having min_salary > 1500;-- 25.列出薪金高于公司平均薪金的所有员工信息,所在部门名称,上级领导,工资等级
-- select d.deptname,e1.ename e2.ename as leadername,
-- where emp2 e1 join dept12 d on e.deptno = d.deptno
-- left join emp2 b on e.mgr = b.empno#解决员工与领导的一个关联问题
-- join sa# (1)公司平均薪资
select avg(sal) avgsal from emp;
+-------------+
| avgsal      |
+-------------+
| 2073.214286 |
+-------------+# (2)第一个连接:部门名字
#      第二个左连接:emp表看成两张表,列出员工对应的上级领导
#      第三个连接:工资等级
select d.dname,e.ename,b.ename as leadername,grade
from emp e join dept d on e.deptno=d.deptno
left join emp b on e.mgr=b.empno
join salgrade s on e.sal between s.losal and s.hisal
where e.sal>(select avg(sal) avgsal from emp);
+------------+-------+------------+-------+
| dname      | ename | leadername | grade |
+------------+-------+------------+-------+
| RESEARCH   | FORD  | JONES      |     4 |
| RESEARCH   | SCOTT | JONES      |     4 |
| ACCOUNTING | CLARK | KING       |     4 |
| SALES      | BLAKE | KING       |     4 |
| RESEARCH   | JONES | KING       |     4 |
| ACCOUNTING | KING  | NULL       |     5 |-- 26.列出与SMITH从事相同工作的所有员工及部门名称
select d.dname,e.*
from emp2 e
join dept12 d
on e.deptno = d.deptno
where e.job = (select job from emp2 where ename  = "SMITH");-- 27.列出薪金高于在部门30工作的所有员工的薪金的员工姓名和薪金、部门名称
# (1)部门30中的员工最高工资
select max(sal) from emp2 where deptno=30;
+----------+
| max(sal) |
+----------+
|  2850.00 |
+----------+# (2)高于最高工资的其他员工
select deptno,ename,sal from emp2
where sal>(select max(sal) from emp where deptno=30)
and deptno!=30;
+--------+-------+---------+
| deptno | ename | sal     |
+--------+-------+---------+
|     20 | JONES | 2975.00 |
|     20 | SCOTT | 3000.00 |
|     10 | KING  | 5000.00 |
|     20 | FORD  | 3000.00 |
+--------+-------+---------+# (3)连接dept表
select d.dname,t.ename,t.sal 
from (select deptno,ename,sal from emp2where sal>(select max(sal) from emp where deptno=30)and deptno!=30) t
join dept12 d
on t.deptno=d.deptno;
+------------+-------+---------+
| dname      | ename | sal     |
+------------+-------+---------+
| RESEARCH   | JONES | 2975.00 |
| RESEARCH   | SCOTT | 3000.00 |
| ACCOUNTING | KING  | 5000.00 |
| RESEARCH   | FORD  | 3000.00 |
+------------+-------+---------+-- 28.列出在每个部门工作的员工数量、平均工资
select d.deptno,count(ename) num,avg(sal)
from emp2 e
right join dept12 d
on e.deptno = d.deptno
group by deptno;

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/195304.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

力扣刷题篇之位运算

系列文章目录 目录 系列文章目录 前言 一、位运算的基本运算 二、位运算的技巧 三、布隆过滤器 总结 前言 本系列是个人力扣刷题汇总&#xff0c;本文是数与位。刷题顺序按照[力扣刷题攻略] Re&#xff1a;从零开始的力扣刷题生活 - 力扣&#xff08;LeetCode&#xff0…

坐标系下的运动旋量转换

坐标系下的运动旋量转换 文章目录 坐标系下的运动旋量转换前言一、运动旋量物体运动旋量空间运动旋量 二、伴随变换矩阵三、坐标系下运动旋量的转换四、力旋量五、总结参考资料 前言 对于刚体而言&#xff0c;其角速度可以写为 ω ^ θ ˙ \hat {\omega} \dot \theta ω^θ˙&…

【顺序表的实现】

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 目录 前言 1. 数据结构相关概念 1、什么是数据结构 2、为什么需要数据结构&#xff1f; 2、顺序表 1、顺序表的概念及结构 1.1 线性表 2、顺序表分类 3、动态顺序表的实现 总…

[AI]ChatGPT4 与 ChatGPT3.5 区别有多大

ChatGPT 3.5 注册已经不需要手机了&#xff0c;直接邮箱认证就可以&#xff0c;这可真算是好消息&#xff0c;坏消息是 ChatGPT 4 还是要收费。 那么 GPT-3.5 与 GPT-4 区别有多大呢&#xff0c;下面简单测试一下。 以从 TDengine 订阅数据为例&#xff0c;TDengine 算是不太小…

SDUT OJ《算法分析与设计》贪心算法

A - 汽车加油问题 Description 一辆汽车加满油后可行驶n公里。旅途中有若干个加油站。设计一个有效算法&#xff0c;指出应在哪些加油站停靠加油&#xff0c;使沿途加油次数最少。并证明算法能产生一个最优解。 对于给定的n和k个加油站位置&#xff0c;计算最少加油次数。 I…

OpenHarmony源码下载

OpenHarmony源码下载 现在的 OpenHarmony 4.0 源码已经有了&#xff0c;在 https://gitee.com/openharmony 地址中&#xff0c;描述了源码获取的方式&#xff0c;但那是基于 ubuntu 或者说是 Linux 的下载方式。在 windows 平台下的下载方式没有做出介绍。 我自己尝试了 wind…

Shell判断:流程控制—if(三)

一、调试脚本 1、调试脚本的其他方法&#xff1a; [rootlocalhost ~] # sh -n useradd.sh 仅调试脚本中的语法错误。 [rootlocalhost ~]# sh -vx useradd.sh 以调试的方式执行&#xff0c;查询整个执行过程。 2、示例&#xff1a; [rootlocalhost ~]# sh -n useradd.sh #调…

Git精讲

Git基本操作 创建Git本地仓库 git initgit clone 配置Git git config [--global] user.name "Your Name" git config [--global] user.email "emailexample.com"–global是一个可选项。如果使用了该选项&#xff0c;表示这台机器上所有的Git仓库都会使…

【giszz笔记】产品设计标准流程【4】

&#xff08;续上回&#xff09; 我们继续把扩展考虑UX环节的产品打造标准流程&#xff0c;来进行梳理。 一千个人心中有一千个哈姆雷特&#xff0c;本文将日常大家耳熟能详&#xff0c;但是又未必人人心中成体系的产品打造标准流程&#xff0c;进行总结。 考虑了两种项目&a…

【Linux系统化学习】进程的状态 | 僵尸进程 | 孤儿进程

个人主页点击直达&#xff1a;小白不是程序媛 Linux专栏&#xff1a;Linux系统化学习 目录 操作系统进程的状态 运行状态 阻塞状态 进程阻塞的现象 挂起阻塞状态 Linux进程状态 Linux内核源代码怎么说 R&#xff08;running状态&#xff09;运行状态 S&#xff08;sl…

Tomcat无法映射到activiti-app导致activiti无法启动页面

原因之一&#xff1a;JDK版本与Tomcat版本不匹配&#xff0c;jdk8 yyds 我使用的是JDK11&#xff0c;Tomcat是9.0的&#xff0c;都是最新的&#xff0c;但还是不行&#xff0c;最后JDK改为8&#xff0c;tomcat的cmd后台没有报错&#xff0c;activiti-pp也可以正常访问了,很神奇…

FPGA设计时序约束八、others类约束之Set_Case_Analysis

目录 一、序言 二、Set Case Analysis 2.1 基本概念 2.2 设置界面 2.3 命令语法 2.4 命令示例 三、工程示例 四、参考资料 一、序言 在Vivado的时序约束窗口中&#xff0c;存在一类特殊的约束&#xff0c;划分在others目录下&#xff0c;可用于设置忽略或修改默认的时序…