创建数据

-- 已知三张表 部门表、员工表和工资等级表-- 部门表[部门编号deptno,部门名称dname,部门地址loc]
create table dept(deptno int primary key ,dname varchar(14),loc varchar(13)
);
-- 添加数据
insert into dept values (10,'accounting','NEW YORK');
insert into dept values (20,'research','DALLAS');
insert into dept values (30,'sales','CHICAGO');
insert into dept values (40,'operations','BOSTON');-- 员工表 emp
-- [员工编号empno, 员工姓名 ename,员工工作 job,员工直属领导编号mgr,入职时间hiredate,
-- 工资sal,奖金comn,部门编号deptno]
create table emp(empno int primary key ,ename varchar(10),job varchar(9),mgr int,hiredate date,sal double,comm double,deptno int
);
-- 添加数据
insert into emp values (7369,'smith','clerk',7902,'1980-12-17',800,NULL,20);
insert into emp values (7499,'allen','salesman',7698,'1981-02-20',1600,300,30);
insert into emp values (7521,'ward','salesman',7698,'1981-02-22',1250,500,30);
insert into emp values (7566,'jones','manager',7839,'1981-04-02',2975,NULL,20);
insert into emp values (7654,'martin','salesman',7698,'1981-09-28',1250,1400,30);
insert into emp values (7698,'blake','manager',7839,'1981-05-01',2850,NULL,30);
insert into emp values (7782,'clarks','manager',7839,'1981-06-09',2450,NULL,10);
insert into emp values (7788,'scott','analyst',7566,'1987-07-03',3000,NULL,20);
insert into emp values (7839,'king','president',NULL,'1981-11-17',5000,NULL,10);
insert into emp values (7844,'turner','salesman',7698,'1981-09-28',1500,0,30);
insert into emp values (7876,'adadms','clerk',7788,'1987-07-13',1100,NULL,20);
insert into emp values (7900,'james','clerk',7698,'1981-12-03',950,NULL,30);
insert into emp values (7902,'ford','analyst',7566,'1981-12-03',3000,NULL,20);
insert into emp values (7934,'miller','clerk',7782,'1981-01-23',1300,NULL,10);
-- 工资等级表 salgrade[等级grade,最低工资lowsal,最高工资hisal]
create table salgrade(grade int,lowsal double,higsal double
);
-- 添加数据
insert into salgrade values (1,700,1200);
insert into salgrade values (2,1201,1400);
insert into salgrade values (3,1401,2000);
insert into salgrade values (4,2001,3000);
insert into salgrade values (5,3001,9999);

题目

1.找出姓名以a,b,s开始的员工信息

select * from emp where ename REGEXP '^[a|b|s].*'; -- 正则表达式
select * from emp where left(ename,1) in ('a','b','s');

2.返回员工的详细信息并按姓名排序

select * from emp order by ename ; -- 升序
select * from emp order by ename desc ; -- 降序

3.返回员工的信息并按工作降序,工资升序排列

select * from emp order by sal, job desc ;

4.返回拥有员工的部门名、部门号

select dept.deptno,dept.dname from dept
inner join emp on dept.deptno = emp.deptno
group by dept.deptno;-- 显示部门下的员工
select dept.deptno,dept.dname ,group_concat(ename) as 'enames'from dept
inner join emp on dept.deptno = emp.deptno
group by dept.deptno;

5.工资高于smith员工信息

select * from emp where sal >
(select sal from emp where ename='smith');

6.返回员工和所属经理的名字(自查询)

select emp.ename,manager.ename from emp
inner join emp as manager
on emp.mgr = manager.empno;

7.返回雇员的雇佣日期早于其经理雇佣日期的员工及其经理姓名

select emp.ename,manager.ename from emp
inner join emp as manager
on emp.mgr = manager.empno
where emp.hiredate<manager.hiredate;

8.返回员工姓名及其所在部门名称

select ename,dname from emp
inner join dept
on emp.deptno=dept.deptno;

9.返回从事clerk 工作的员工姓名和所在部门名称

select ename,dname from emp
inner join dept
on emp.deptno=dept.deptno
where emp.job='clerk';

10.返回部门号及其本部门的最低工资

select deptno,min(sal) from emp
group by deptno;

11.返回销售部(sales)所有员工的姓名

select ename from emp
inner join dept
on emp.deptno=dept.deptno
where dname='sales';

12.返回与’scott’从事相同工作的员工信息

select * from emp
where job =
(select job from emp where ename = 'scott');-- 去掉scott本人
select * from emp
where job =
(select job from emp where ename = 'scott')
having  ename != 'scott';

13.返回员工的详细信息(包括部门名称和部门地址)

select emp.*,dept.dname,dept.loc from emp
inner join dept
on emp.deptno=dept.deptno;

14.返回员工工作及其从事此工作的最低工资

select job,min(emp.sal) from emp group by job;

15.返回工资处于第四级别的员工的姓名

select emp.ename from emp,salgrade
where sal
between salgrade.lowsal and salgrade.higsal
and salgrade.grade='4';

16.返回工资为二等级的职员姓名、部门所在地和二等级的最低工资和最高工资

select emp.ename,emp.sal,dept.loc,salgrade.*
from emp,salgrade,dept
where salgrade.grade=2 and
emp.deptno=dept.deptno
and emp.sal between salgrade.lowsal
and salgrade.higsal;

17.工资等级高于‘smith’的员工信息

-- 利用视图表
-- 根据最高最低分将员工划分薪资登记
create view v_17 as select
emp.*,salgrade.grade from salgrade,emp where sal between lowsal and higsal;
-- 大于smith的工资等级
select * from v_17
where v_17.grade > (select grade from v_17 where ename='smith');-- 第二种方法
select emp.*,grade
from emp,salgrade
where sal between lowsal and higsal
and grade >
(select grade
from salgrade,emp
where ename='smith' and sal
between lowsal and higsal);

B站_千锋2020MySQL_6.04练习题相关推荐

  1. 千锋教育python全集_千锋教育-Python逆战班1905期(完整版)

    千锋教育面授课程包含HTML5大前端培训.JavaEE+分布式开发培训.Python全栈+人工智能培训.全链路UI/UE设计培训.云计算培训.全栈软件测试培训.大数据+人工智能培训.智能物联网+嵌入式 ...

  2. python千锋好还是黑马好_千锋讲师有话说: Python前景好不好?

    相信大家在计划进入某个行业之前,都会非常关心一个问题,就是:这个行业的发展前景.如果发展前景不好,我们往往也很难找到合适的工作.有入门Python的想法,却不知道Python前景好不好?千锋讲师告诉你 ...

  3. 1903java全套_#千锋逆战班,java1903#

    在千锋"逆战"学习第17天 SpringMVC运行流程: SpringMVC基础配置: 1.web.xml: dispatcherServlet / 2.controller层方法 ...

  4. 千锋教育python全集_千锋python+人工智能最新视频教程(大全集)

    第一章xa0Python语音基础简介: 通过第一章的学习,对Python有一定的了解,掌握Python语法,可以使用Python原生语言开发项目.对于Python的应用于开发有一个系统的认知,对于未来 ...

  5. 千峰java 笔记整理_千锋--多线程笔记

    进程:正在运行的程序 多线程处于宏观上的并行/微观上的串行状态 第一种实现多线程的方法: 新增类继承Thread 重写run方法 在测试类中创建子对象调用start()方法启动该子线程 第二种实现多线 ...

  6. 移动平台 iPhone开发基础视频教程-第1季_千锋学院出品

    该视频由清华大学硕士,原FSMLabs中国区技术总监 ,欧阳老师的视频, 他10多年软件开发经验,6年嵌入式行业教学经验,2年以上iPhone/iPad开发经验,2年以上Android开发经验,负责开 ...

  7. 北京千锋python培训班

    人工智能时代的到来,催生出大量新技术.新企业和新业态,为企业发展.国家经济发展注入了新的生命力,随着人工智能概念在各领域的广泛应用,越来越多的人看好其发展前景,想要加入其中,Python作为人工智能时 ...

  8. PyEcharts学习笔记整理,基于B站千锋教育

    目录 1. PyEcharts:初始化配置.全局配置项(标题配置.缩放配置) 2. PyEcharts:全局配置项(图例配置项.视觉映射配置项.提示框配置项.坐标轴配置项) 3. PyEcharts: ...

  9. python千锋好还是黑马好_千峰,达内,黑马哪个好?我们该如何选择呢

    千峰,达内,黑马哪个好?说起千峰,达内,黑马,相信很多人都不会陌生,相信可能也有学生报过他们培训班,那么千峰,达内,黑马哪个会比较好呢,我们该如何选择一家好的培训班呢.开课通知:php中文网<第 ...

最新文章

  1. PMP认证_计算题公式
  2. 深入理解JavaScript系列(2):揭秘命名函数表达式(转)
  3. MySQL索引面试题分析(索引分析,典型题目案例)
  4. 产品经理的高阶能力:商业思维基于商业画布的研习方法论
  5. Spring Bootstrap中具有配置元数据的高级配置
  6. 为什么需要分布式配置中心
  7. opencv4图像基本变化
  8. Win10设置不能保存,添加应用磁贴重启后恢复原状问题
  9. ‘The client noticed that the server is not a supported distribution of Elasticsearch‘ 报错及解决办法
  10. 3位1体学习法(smart哥)
  11. 最后一课——没有拥抱,已成永远
  12. matlab 画表格函数,excel表格数据曲线图模拟函数-如何在excel中绘制函数图像?
  13. AX9000利用docker实现迅雷远程下载
  14. 苹果截屏快捷键_几招Mac快捷键技巧
  15. 2021年美国大学生数学建模竞赛(题目详细介绍)
  16. 0xFFFF的Debug
  17. MCU 上电复位功能的使用注意点
  18. java oracle 时间查询_Oracle 日期查询
  19. Kaprekar constant(卡普雷卡尔黑洞)
  20. 基于XMPP的即时通信系统的建立(一)— XMPP基础概念

热门文章

  1. (转载)散射线对X线照片质量的影响
  2. 高精度GPS北斗卫星授时仪器(校时器)技术参数详解
  3. 计算机网络I-考前指导复习提纲
  4. 【大学物理·恒定电流的磁场】带电粒子在电场和磁场中的运动
  5. 《java并发编程实战》读书笔记二 对象的发布与逸出
  6. LDCT图像重建论文——Eformer: Edge Enhancement based Transformer for Medical Image Denoising
  7. 几种图像变换 刚体变换 仿射变换 投影变换
  8. linux3.0 usb键盘驱动,USB3.0驱动下载
  9. mysql day 01
  10. 转载 用来自己学习的