Mysql数据库两表连接进行各种操作

一,创建两个表emp和dept,并给它们插入数据

1.创建表emp

create table dept (dept1 int ,dept_name varchar(11)) charset=utf8;

2.创建表dept
 create table emp (sid int ,name varchar(11),age int,worktime_start date,incoming int,dept2 int) charset=utf8;
3.为dept表输入数据

insert into dept values
    (101,'财务'),
    (102,'销售'),
    (103,'IT技术'),
    (104,'行政');

4.为emp表输入数据

insert into emp values
   (1789,'张三',35,'1980/1/1',4000,101),
    (1674,'李四',32,'1983/4/1',3500,101),
    (1776,'王五',24,'1990/7/1',2000,101),
    (1568,'赵六',57,'1970/10/11',7500,102),
    (1564,'荣七',64,'1963/10/11',8500,102),
    (1879,'牛八',55,'1971/10/20',7300,103),
    (1668, '钱九', 64, '1963/5/4', 8000, 102),
    (1724, '武十', 22, '2023/5/8', 1500, 103),
    (1770, '孙二', 65, '1986/8/12', 9500, 101),
    (18400, '苟一', 65, '1986/8/12', 1500, 101);

二.连接查询操作

1.找出销售部门中年纪最大的员工的姓名

select e.name from emp e
    join dept d
    on e.dept2=d.dept1
    order by e.age desc
    limit 1;

2.求财务部门最低工资的员工姓名

select e.name from emp e
     join dept d on e.dept2=d.dept1
    where d.dept_name='财务'
    order by e.incoming ASC
    limit 1;

3.列出每个部门收入总和高于9000的部门名称

 SELECT d.dept_name, SUM(e.incoming) AS total_income
    FROM dept d
    JOIN emp e ON d.dept1 = e.dept2
    GROUP BY d.dept_name
    HAVING total_income > 9000;

4.求工资在7500到8500元之间,年龄最大的人的姓名及部门

SELECT e.name, d.dept_name FROM emp e
    JOIN dept d ON e.dept2 = d.dept1
    WHERE e.incoming BETWEEN 7500 AND 8500
    ORDER BY e.age DESC
    LIMIT 1;

 5.找出销售部门收入最低的员工入职时间

 SELECT e.worktime_start
    FROM emp e
    JOIN dept d ON e.dept2 = d.dept1
    WHERE d.dept_name = '销售'
    ORDER BY e.incoming ASC
    LIMIT 1;

 6.财务部门收入超过2000元的员工姓名

SELECT e.name
    FROM emp e
    JOIN dept d ON e.dept2 = d.dept1
    WHERE d.dept_name = '财务' AND e.incoming > 2000;

7.列出每个部门的平均收入及部门名称

 SELECT d.dept_name, AVG(e.incoming) AS average_income
    FROM dept d
    JOIN emp e ON d.dept1 = e.dept2
    GROUP BY d.dept_name;

8.IT技术部入职员工的员工号

select e.sid from emp e
    join dept d on e.dept2=d.dept1
    where d.dept_name='IT技术';

9.财务部门的收入总和;

select  sum(e.incoming)
    from emp e
    join dept d on e.dept2=d.dept1
    where d.dept_name='财务';

10.找出哪个部门还没有员工入职;

SELECT d.dept_name FROM dept d LEFT JOIN emp e ON d.dept1 = e.dept2 WHERE e.sid IS NULL;

  11.列出部门员工收入大于7000的部门编号,部门名称;

select d.dept1,d.dept_name from dept d
    -> join emp e on d.dept1=e.dept2
    -> where e.incoming>7000;

 12.列出每一个部门的员工总收入及部门名称;

SELECT d.dept_name, SUM(e.incoming) AS total_income

FROM dept d

JOIN emp e ON d.dept1 = e.dept2

GROUP BY d.dept_name;

  13.列出每一个部门中年纪最大的员工姓名,部门名称;

SELECT e.name, d.dept_name FROM emp e INNER JOIN dept d ON e.dept2 = d.dept1 WHERE (e.dept2, e.age) IN (SELECT dept2, MAX(age) FROM emp GROUP BY dept2);
 

 14.求李四的收入及部门名称

SELECT e.incoming, d.dept_name FROM emp e INNER JOIN dept d ON e.dept2 = d.dept1 WHERE e.name = '李四';
 

15.列出每个部门中收入最高的员工姓名,部门名称,收入,并按照收入降序

SELECT e.name, d.dept_name, e.incoming FROM emp e INNER JOIN dept d ON e.dept2 = d.dept1 WHERE (e.dept2, e.incoming) IN (SELECT dept2, MAX(incoming) FROM emp GROUP BY dept2) ORDER BY e.incoming DESC;



    

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

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

相关文章

CSS技巧专栏:一日一例 2.纯CSS实现 多彩边框按钮特效

大家好,今天是 CSS技巧一日一例 专栏的第二篇《纯CSS实现多彩边框按钮特效》 先看图: 开工前的准备工作 正如昨日所讲,为了案例的表现,也处于书写的习惯,在今天的案例开工前,先把昨天的准备工作重做一遍。 清除浏览器的默认样式定义页面基本颜色设定body的样式清除butt…

同步时钟系统支持多种校时方式

在当今数字化、信息化高速发展的时代,时间的准确性和同步性变得至关重要。无论是金融交易、通信网络、交通运输,还是工业生产、科学研究等领域,都离不开一个精确且同步的时钟系统。而同步时钟系统之所以能够在众多领域发挥关键作用&#xff0…

【网络安全】Host碰撞漏洞原理+工具+脚本

文章目录 漏洞原理虚拟主机配置Host头部字段Host碰撞漏洞漏洞场景工具漏洞原理 Host 碰撞漏洞,也称为主机名冲突漏洞,是一种网络攻击手段。常见危害有:绕过访问控制,通过公网访问一些未经授权的资源等。 虚拟主机配置 在Web服务器(如Nginx或Apache)上,多个网站可以共…

论文阅读 - Intriguing properties of neural networks

Intriguing properties of neural networks 经典论文、对抗样本领域的开山之作 发布时间:2014 论文链接: https://arxiv.org/pdf/1312.6199.pdf 作者:Christian Szegedy, Wojciech Zaremba, Ilya Sutskever, Joan Bruna, Dumitru Erhan, Ian Goodfellow,…

AI会取代建筑设计师们的工作吗?

随着人工智能技术的不断进步和革新,几乎每一个行业都在经历深刻的变革和重新定义,建筑可视化也不例外。无论是通过智能算法生成高度逼真的三维模型,还是利用机器学习优化渲染过程,AI都在为建筑可视化注入新的活力,改变…

Redis配置主从服务器报错:Error condition on socket for SYNC: No route to host

Redis配置主从服务器报错:Error condition on socket for SYNC: No route to host 问题方法开放防火墙端口策略额外的检查 这个问题时常出现在配置Redis的主从服务器时出现,无法建立TCP连接。如果需要建立多个主从服务器,并且有 主 -> 从…

数据结构 —— Dijkstra算法

数据结构 —— Dijkstra算法 Dijkstra算法划分集合模拟过程打印路径 在上次的博客中,我们解决了使用最小的边让各个顶点连通(最小生成树) 这次我们要解决的问题是现在有一个图,我们要找到一条路,使得从一个顶点到另一个…

【Linux】网络新兵连

欢迎来到 破晓的历程的 博客 ⛺️不负时光,不负己✈️ 引言 在上一篇博客中,我们简单的介绍了一些Linux网络一些比较基本的概念。本篇博客我们将开始正式学习Linux网络套接字的内容,那么我们开始吧! 1.网络中的地址管理 大家一…

2024年 春秋杯 网络安全联赛夏季赛 Web方向 题解WirteUp 部分

brother 题目描述:web哥,打点容易提权难。 打点就是最简单的SSTI。 执行下find / -user root -perm -4000 -print 2>/dev/null找一下具备suid权限的命令 /usr/lib/dbus-1.0/dbus-daemon-launch-helper /usr/bin/chsh /usr/bin/gpasswd /usr/bin/n…

Java面试八股之MySQL中的锁及其作用

MySQL中的锁及其作用 MySQL中的锁分类 全局锁(Global Lock): 描述:对整个数据库实例加锁,最常见的是FLUSH TABLES WITH READ LOCK命令,主要用于全库备份等场景,阻止所有对表的写入操作。 作…

7月开刷880题,30天搞定必刷重点‼️

李林880一定要在暑假期间给吃透 马上就要刷家了,教大家一个方法,30天吃透880题,正确了90%! 25版880题变化并不大,25版的主要改动是在去年的李6李4模拟题中挑选了约40道题,加入到今年的新版本中。 具体而…

PDF内存如何变小,PDF内存压缩,PDF内存变小怎么调整

在数字化时代,pdf已成为工作、学习和生活中不可或缺的文件格式。它以其跨平台兼容性和安全性受到广大用户的喜爱。然而,随着pdf文件中嵌入的图片、图形和文本内容的增多,文件大小往往会变得相当可观,给文件的传输和存储带来一定的…

python采集阿里巴巴历年员工人数统计报告

数据为2012到2022财年阿里巴巴每年的全职员工数量。截止2022年3月31日,阿里巴巴共有全职员工254941人,比上年增长3479人。 数据来源于阿里巴巴20-F和F-1文件 按阿里巴巴财政年度进行统计,阿里巴巴财年结束日期为每年3月31日 为全职员工人数 阿…

探索横河AQ6370E系列光谱仪隐藏功能!---高级标记功能!

横河AQ6370E系列光谱仪的这款光谱仪的传统功能中,其实还隐藏了一个特别实用的功能——高级标记功能!前所未有的方式解析数据与测量信号,不仅带来了全新的测试体验,还提升了测量速度,那么这个功能怎么找到呢&#xff0c…

绝区陆--大语言模型的幻觉问题是如何推动科学创新

介绍 大型语言模型 (LLM)(例如 GPT-4、LLaMA-2、PaLM-2、Claude-2 等)已展示出为各种应用生成类似人类文本的出色能力。然而,LLM 的一个鲜为人知的方面是它们倾向于“产生幻觉”或生成不正确或没有根据的事实陈述。我不认为这仅仅是一个限制…

电脑硬盘分区的基本步骤(2个实用的硬盘分区方法)

在现代计算机中,硬盘分区是非常重要的一步。无论是新硬盘的初始化,还是重新组织现有硬盘,分区都是必不可少的操作。本文将详细介绍电脑硬盘分区的基本步骤,帮助您更好地管理和利用硬盘空间。 文章开始,我们先简单说一…

python——list

在Python中,list是一种非常灵活的数据结构,可以用来存储一系列的元素。这些元素可以是任何类型,包括数字、字符串、其他列表等,并且它们不需要是同一种类型。 列表特征: 以下是一些关于Python列表的基本操作&#xff…

Intellj idea无法启动

个人电脑上安装的是2024.01版本的intellj idea作为开发工具,引入了javaagent作为工具包 但是在一次invaliad cache操作后,intellj idea就无法启动了,双击无响应。 重装了idea后也无效(这个是有原因的,下面会讲&#…

仕考网:公务员体检对视力有要求吗?

公务员招聘过程中的体检标准对视力有具体要求,根据不同的岗位职责有所差异。通常情况下,如果申请者双眼经过矫正后视力均低于4.8(小数视力0.6),则会被视为不合格。 对于某些特殊岗位,如J察等,单侧裸眼视力若低于4.8也…

Vue学习笔记-自定义组件使用v-model

拆解实现 父组件 <template><div></div><Son :name"name" inputChange"inputChange"></Son>{{ name }} </template><script setup> import {ref} from vue import Son from ./son2.vueconst nameref("张…