数据库的多表查询(MYSQL)表表联立

根据以上三张表格,对三张表格进行不同的联立,查询并显示符合条件的内容。

1. 查出至少有一个员工的部门。显示部门编号、部门名称、部门位置、部门人数。


mysql> SELECT d.deptno AS 部门编号, d.dname as 部门名称, d.loc as 部门位置, COUNT(e.empno) as 部门人数 FROM dept d
JOIN employee e ON d.deptno = e.deptno
GROUP BY d.deptno, d.dname, d.loc;

+----------+----------+----------+----------+
| 部门编号 | 部门名称 | 部门位置 | 部门人数 |
+----------+----------+----------+----------+
|       10 | 教研部   | 北京     |        3 |
|       20 | 学工部   | 上海     |        5 |
|       30 | 销售部   | 广州     |        6 |
|       50 | 保洁部   | 武汉     |        1 |
+----------+----------+----------+----------+
4 rows in set

2. 列出所有员工的姓名及其直接上级的姓名。


mysql> SELECT e1.ename AS 员工姓名, e2.ename AS 上级姓名
FROM employee e1
LEFT JOIN employee e2 ON e1.mgr = e2.empno;

+----------+----------+
| 员工姓名 | 上级姓名 |
+----------+----------+
| 甘宁     | 庞统     |
| 黛琦丝   | 关羽     |
| 殷天正   | 关羽     |
| 刘备     | 曾阿牛   |
| 谢逊     | 关羽     |
| 关羽     | 曾阿牛   |
| 张飞     | 曾阿牛   |
| 诸葛亮   | 刘备     |
| 曾阿牛   | NULL     |
| 韦一笑   | 关羽     |
| 周泰     | 诸葛亮   |
| 程普     | 关羽     |
| 庞统     | 刘备     |
| 黄盖     | 张飞     |
| 张三     | 甘宁     |
+----------+----------+
15 rows in set


3. 列出受雇日期早于直接上级的所有员工的编号、姓名、部门名称。


mysql> SELECT e1.empno as 员工编号, e1.ename as 员工姓名, d.dname as 部门名称 
FROM employee e1
JOIN employee e2 ON e1.mgr = e2.empno
JOIN dept d ON e1.deptno = d.deptno
WHERE e1.hiredate < e2.hiredate;

+----------+----------+----------+
| 员工编号 | 员工姓名 | 部门名称 |
+----------+----------+----------+
|     1007 | 张飞     | 教研部   |
|     1001 | 甘宁     | 学工部   |
|     1004 | 刘备     | 学工部   |
|     1002 | 黛琦丝   | 销售部   |
|     1003 | 殷天正   | 销售部   |
|     1006 | 关羽     | 销售部   |
+----------+----------+----------+
6 rows in set


4. 列出部门名称和这些部门的员工信息,同时列出那些没有员工的部门。


mysql> SELECT d.dname, e.empno, e.ename
FROM dept d
LEFT JOIN employee e ON d.deptno = e.deptno;

+--------+-------+--------+
| dname  | empno | ename  |
+--------+-------+--------+
| 教研部 |  1007 | 张飞   |
| 教研部 |  1009 | 曾阿牛 |
| 教研部 |  1014 | 黄盖   |
| 学工部 |  1001 | 甘宁   |
| 学工部 |  1004 | 刘备   |
| 学工部 |  1008 | 诸葛亮 |
| 学工部 |  1011 | 周泰   |
| 学工部 |  1013 | 庞统   |
| 销售部 |  1002 | 黛琦丝 |
| 销售部 |  1003 | 殷天正 |
| 销售部 |  1005 | 谢逊   |
| 销售部 |  1006 | 关羽   |
| 销售部 |  1010 | 韦一笑 |
| 销售部 |  1012 | 程普   |
| 财务部 | NULL  | NULL   |
| 保洁部 |  1015 | 张三   |
+--------+-------+--------+
16 rows in set


5. 列出最低薪金大于15000的各种工作及从事此工作的员工人数。


mysql> SELECT job, COUNT(*) AS 员工人数
FROM employee
WHERE job IN (SELECT DISTINCT job FROM employee WHERE sal > 15000)
GROUP BY job;

+--------+----------+
| job    | 员工人数 |
+--------+----------+
| 销售员 |        4 |
| 经理   |        3 |
| 分析师 |        2 |
| 董事长 |        1 |
| 保洁员 |        1 |
+--------+----------+
5 rows in set


6. 列出在销售部工作的员工的姓名,假定不知道销售部的部门编号。


mysql> SELECT ename
FROM employee
WHERE deptno = (SELECT deptno FROM dept WHERE dname = '销售部');

+--------+
| ename  |
+--------+
| 黛琦丝 |
| 殷天正 |
| 谢逊   |
| 关羽   |
| 韦一笑 |
| 程普   |
+--------+
6 rows in set


7. 列出薪金高于公司平均薪金的所有员工信息,所在部门名称,上级领导,工资等级。


mysql> SELECT e.ename, e.job, e.sal, e.mgr, e2.ename AS 上级领导,d.dname
FROM employee e
JOIN dept d ON e.deptno = d.deptno
JoIN employee e2 oN e.mgr = e2 .empno
JOIN (
  SELECT AVG(sal) AS average_salary
  FROM employee
) AS a ON e.sal > a.average_salary;
+--------+--------+-------+------+----------+--------+
| ename  | job    | sal   | mgr  | 上级领导 | dname  |
+--------+--------+-------+------+----------+--------+
| 刘备   | 经理   | 29750 | 1009 | 曾阿牛   | 学工部 |
| 关羽   | 经理   | 28500 | 1009 | 曾阿牛   | 销售部 |
| 诸葛亮 | 分析师 | 30000 | 1004 | 刘备     | 学工部 |
| 庞统   | 分析师 | 30000 | 1004 | 刘备     | 学工部 |
| 张三   | 保洁员 | 80000 | 1001 | 甘宁     | 保洁部 |
+--------+--------+-------+------+----------+--------+
5 rows in set

8.列出与庞统从事相同工作的所有员工及部门名称。


mysql> SELECT e.ename, d.dname AS 部门名称
FROM employee e
JOIN dept d ON e.deptno = d.deptno
WHERE e.job = (SELECT job FROM employee
WHERE ename = '庞统');
+--------+----------+
| ename  | 部门名称 |
+--------+----------+
| 诸葛亮 | 学工部   |
| 庞统   | 学工部   |
+--------+----------+
2 rows in set
9.列出薪金高于部门30工作的所有员工的薪金的员工姓名和薪金、部门名称。
mysql> SELECT e.ename, e.sal, d.dname
FROM employee e
JOIN dept d ON e.deptno = d.deptno
WHERE e.sal > (
  SELECT MAX(sal)
  FROM employee
  WHERE deptno = 30
);
+--------+-------+--------+
| ename  | sal   | dname  |
+--------+-------+--------+
| 刘备   | 29750 | 学工部 |
| 诸葛亮 | 30000 | 学工部 |
| 曾阿牛 | 50000 | 教研部 |
| 庞统   | 30000 | 学工部 |
| 张三   | 80000 | 保洁部 |
+--------+-------+--------+
5 rows in set

10.查出年份、利润、年度增长比。


mysql> SELECT year,zz, 
(zz - LAG(zz, 1, 0) OVER (ORDER BY year)) / LAG(zz, 1, 0) OVER (ORDER BY year) AS 年度增长比 
FROM lirun;

+------+------+------------+
| year | zz   | 年度增长比 |
+------+------+------------+
| 2010 |  100 | NULL       |
| 2011 |  150 | 0.5000     |
| 2012 |  250 | 0.6667     |
| 2013 |  800 | 2.2000     |
| 2014 | 1000 | 0.2500     |
+------+------+------------+
5 rows in set

源码在码云Gitee:
数据库的多表查询(MYSQL)表表联立 · zyt/麦当劳投资人 - Gitee.comicon-default.png?t=N7T8https://gitee.com/zytscode/mcdonalds-investors/blob/master/%E6%95%B0%E6%8D%AE%E5%BA%93%E7%9A%84%E5%A4%9A%E8%A1%A8%E6%9F%A5%E8%AF%A2%EF%BC%88MYSQL%EF%BC%89%E8%A1%A8%E8%A1%A8%E8%81%94%E7%AB%8B

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

uniapp2023年微信小程序头像+昵称分别获取

1、DOM <view class"m-user"><view class"user-info"><!--头像 GO--><button class"avatar avatar-wrapper" open-type"chooseAvatar" chooseavatar"onChooseAvatar"slot"right"><im…

2023-11-30 AIGC-让图片动起来的主流 AI 工具

摘要&#xff1a; 2023-11-30 AIGC-让图片动起来的主流 AI 工具 让图片动起来的主流 AI 工具 一、数字人播报 1、HeyGen 2、D-ID 3、SadTalker 二、图片生成视频 1、Runway Gen-2 2、Pika Labs 3、Genmo 三、伪3D动态效果 1、LeiaPix 2、剪映手机版 四、角色动画 Animated …

Sectigo代码签名证书——最优惠的解决方案

在软件开发领域&#xff0c;代码签名证书是确保软件安全和完整性的重要工具。它为开发者提供了一种验证其软件来源和内容的方式&#xff0c;同时向用户传递了信任和可靠性的信息。然而&#xff0c;高昂的代码签名证书费用一直是许多开发者面临的挑战之一。而Sectigo代码签名证书…

【漏洞复现】万户协同办公平台ezoffice SendFileCheckTemplateEdit.jsp接口存在SQL注入漏洞 附POC

漏洞描述 万户ezOFFICE协同管理平台是一个综合信息基础应用平台。 万户协同办公平台ezoffice SendFileCheckTemplateEdit.jsp接口存在SQL注入漏洞。 免责声明 技术文章仅供参考,任何个人和组织使用网络应当遵守宪法法律,遵守公共秩序,尊重社会公德,不得利用网络从事危害…

智能客服核心技术——预测会话与答案生成

1.信息检索 2. 句型模板匹配标准问题生成答案 3.根据知识图谱推理得到答案

【目标检测】进行实时检测计数时,在摄像头窗口显示实时计数个数

这里我是用我本地训练的基于yolov8环境的竹签计数模型&#xff0c;在打开摄像头窗口增加了实时计数显示的代码&#xff0c;可以直接运行&#xff0c;大家可以根据此代码进行修改&#xff0c;其底层原理时将检测出来的目标的个数显示了出来。 该项目链接&#xff1a;【目标检测…

区分(GIOU、DIOU、CIOU)(正则化、归一化、标准化)

一、IOU IoU 的全称为交并比&#xff08;Intersection over Union&#xff09;。IoU 计算的是 “预测的边框” 和 “真实的边框” 的交集和并集的比值。 1.GIOU&#xff1a;预测框&#xff08;蓝框&#xff09;和真实框&#xff08;绿框&#xff09;的最小外接矩形C。来获取预…

Pycharm使用远程服务器运行本地python文件

一、连接远程服务器 路径&#xff1a;Tools → Deployment → Configuration → SFTP → 取名 填写配置信息 二、配置python解释器 三、运行python文件

面试:SpringMVC问题

文章目录 SpringMVC运行流程MVC的概念与请求在MVC中的执行路径&#xff0c;ResponsBody注解的用途SpringMVC启动流程SpringMVC的拦截器和过滤器有什么区别&#xff1f;执行顺序&#xff1f;Spring和SpringMVC为什么需要父子容器&#xff1f; SpringMVC运行流程 • 客户端&#…

cddd 安装指南(pip install cddd)

pip install cddd 这个命令可能会报错&#xff0c;因为要求是TensorFlow1.10.0 TensorFlow1.10.0对应的Python版本是3.6&#xff0c;所以如果你的Python版本是3.6以上是不行的.....

git 出现 failed to push some refs to ‘xxx‘

初始化仓库 推送代码 git push -u origin “master” git 出现 failed to push some refs to ‘xxx’ 错误 出错截图&#xff1a; 原因&#xff1a; 本地init创建的仓库&#xff0c;主分支叫main&#xff0c;而这里推的分支是 master 刚刚初始化的仓库没有 main分支 所以推不上…

vue3+vite 批量引入局部组件及使用

目录结构 批量引入组件 例如&#xff1a;src/views/oss/components/customComponents.ts import { ref, defineAsyncComponent, markRaw } from vue;const modules import.meta.glob(./*.vue);//这告诉 TypeScript&#xff0c;components.value 是一个键为字符串、值为 define…

引领Serverless构建之路,亚马逊云科技re:Invent 2023首日主题演讲重磅发布

在每年的亚马逊云科技re:lnvent大会&#xff0c;由Peter DeSantis带来的《周一晚间直播》是re:lnvent大会的第一个并让人值得期待的主题演讲。作为亚马逊云科技高级副总裁&#xff0c;Peter发布了数据库和应用领域的三项Serverless创新&#xff0c;使客户能够更快、更轻松地扩展…

Carbonyl ,一个可以在终端里运行的浏览器

浏览器对于我们的日常来说是使用频率比较高的一个东西。 一般来说&#xff0c;对于桌面的发行版的linux的浏览器&#xff0c;用的比较多的是Firefox浏览器。对于我们日常windows、mac等。常用的有chrome、edge等。 但是&#xff01;在终端里运行一个浏览器&#xff0c;我想大多…

GPT-3解读:惊艳世界的模型原来是大力出奇迹

欢迎来到魔法宝库&#xff0c;传递AIGC的前沿知识&#xff0c;做有格调的分享❗ 喜欢的话记得点个关注吧&#xff01; 今天&#xff0c;我们将共同探索OpenAI的GPT-3&#xff0c;与GPT-2相比&#xff0c;GPT-3更像是一个大力出奇迹的结果。接下来&#xff0c;就让我们跟随论文…

iview弹窗提交问题优化

如上图所示 有时候在弹窗中 有比较复杂的表格组件数据 这时候 你如果把提交按钮直接放在弹窗上 就会很麻烦 不仅要处理表格的验证 同时也要维护弹窗的开启和关闭状态 不是很自由 这时候 就看见把提交按钮单独摘出来 可以在自建的按钮上 判断各种状态 是不是很方便呢

金融网站的技术 SEO:提示和最佳实践

如果你想提高排名&#xff0c;你必须提供高质量的材料&#xff0c;保持你的网站平稳运行&#xff0c;并吸引来自权威网站的联系。但是&#xff0c;作为金融服务供应商&#xff0c;您可能会期望网站访问者和搜索引擎进行更多审查。请记住&#xff0c;你是在要求人们把钱投入你身…

4、RTC 实时时钟Demo(STM32F407)

RTC是个独立的BCD定时器/计数器。RTC 提供一个日历时钟&#xff0c;两个可编程闹钟中断&#xff0c;以及一个具有中断功能的周期性可编程唤醒标志。RTC还包含用于管理低功耗模式的自动唤醒单元。 (RTC实质&#xff1a;一个掉电(主电源)后还继续运行(由VBAT供电)的32位的向上计…

有时出厂重置BIOS是解决电脑问题和保持其最佳性能的好办法,主要有两种方法

​BIOS是计算机开机时启动的第一个程序&#xff0c;它有助于执行一些基本的计算机操作&#xff0c;并管理计算机和安装在计算机上的操作系统之间的命令。与任何其他程序一样&#xff0c;如果在启动计算机时遇到问题或在计算机中添加了新硬件&#xff0c;则可能需要将BIOS重置为…

Windows系列:Windows的13个版本以及 Windows Server详解(配置)

Windows的13个版本以及 Windows Server详解&#xff08;配置&#xff09; 一. Windows的13个版本的区别&#xff0c;企业版、教育版、专业版、工作站版、SE版的主要区别家庭版专业版教育版企业版Servers版 二. Windows Server VS Windows&#xff0c;两者有啥区别&#xff1f;什…
最新文章