当前位置: 首页 > news >正文

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;

 

相关文章:

mysql练习1

-- 1.查询出部门编号为BM01的所有员工 SELECT* FROMemp e WHEREe.deptno BM01; -- 2.所有销售人员的姓名、编号和部门编号。 SELECTe.empname,e.empno,e.deptno FROMemp e WHEREe.empstation "销售人员";-- 3.找出奖金高于工资的员工。 SELECT* FROMemp2 WHE…...

【2017年数据结构真题】

请设计一个算法&#xff0c;将给定的表达式树&#xff08;二叉树&#xff09;转换成等价的中缀表达式&#xff08;通过括号反映次序&#xff09;&#xff0c;并输出。例如&#xff0c;当下列两棵表达式树作为算法的输入时&#xff1a; 输出的等价中缀表达式分别为(ab)(a(-d)) 和…...

神辅助 Cursor 编辑器,加入 GPT-4 让编码更轻松!

分类 互联网 在 ChatGPT 问世之前&#xff0c;我们的编码方式很多时候都是面向搜索引擎编码&#xff0c;需要不断地进行搜索&#xff0c;然后复制粘贴&#xff0c;俗称复制粘贴工程师。 但是&#xff0c;随着ChatGPT的出现&#xff0c;这一切将彻底改变。 ChatGPT 是一种基于…...

解决Qt5.13.0无MySQL驱动问题

一、前言 由于Qt5.12.3是最后提供mysql数据库插件的版本&#xff0c;往后的版本需要自行编译对应的mysql数据库插件&#xff0c;官方安装包不再提供。使用高版本的Qt就需要自行编译mysql驱动。 若没有编译在QT中调用Qsqldatabase库连接mysql时&#xff0c;提示出现如下问题&a…...

YOLOv8改进 | 如何在网络结构中添加注意力机制、C2f、卷积、Neck、检测头

一、本文介绍 本篇文章的内容是在大家得到一个改进版本的C2f一个新的注意力机制、或者一个新的卷积模块、或者是检测头的时候如何替换我们YOLOv8模型中的原有的模块&#xff0c;从而用你的模块去进行训练模型或者检测。因为最近开了一个专栏里面涉及到挺多改进的地方&#xff…...

记录一个困难

Mysql加插件 create table tb_xuesheng1 as select * from tb_xuesheng; 会报如下错误 SQL 错误 [3185] [HY000]: Cant find master key from keyring, please check in the server log if a keyring is loaded and initialized successfully.当我去搜寻答案网上都说缺少插件…...

Linux 进程管理 实时调度类及SMP和NUMA

文章目录 一、 实时调度类分析1.1 实时调度实体sched_rt_entity数据结构1.2 实时调度类rt_sched_class数据结构1.3 实时调度类功能函数 二、SMP和NUMA2.1 SMP&#xff08;多对称处理器结构&#xff0c;UMA&#xff09;2.2 NUMA&#xff08;非一致内存访问结构&#xff09;2.3 C…...

线性表--链表-1

文章目录 主要内容一.链表练习题1.设计一个递归算法&#xff0c;删除不带头结点的单链表 L 中所有值为 X 的结点代码如下&#xff08;示例&#xff09;: 2.设 L为带头结点的单链表&#xff0c;编写算法实现从尾到头反向输出每个结点的值代码如下&#xff08;示例&#xff09;: …...

WPF小知识

在编写WPF程序遇到一些小问题&#xff0c;所以记录起来&#xff0c;查其他方便。 Label自动换行 网上搜的都不能自动换行&#xff0c;发现使用Run 就可以。在脚本中直接调用labTip.Text进行赋值就可以了。 <Label Foreground"#FF9E9E9E" FontSize"16"…...

坐标系下的运动旋量转换

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

Android Termux安装MySQL,通过内网穿透实现公网远程访问

&#x1f525;博客主页&#xff1a; 小羊失眠啦. &#x1f516;系列专栏&#xff1a; C语言、Linux、Cpolar ❤️感谢大家点赞&#x1f44d;收藏⭐评论✍️ 文章目录 前言1.安装MariaDB2.安装cpolar内网穿透工具3. 创建安全隧道映射mysql4. 公网远程连接5. 固定远程连接地址 前…...

Python in Visual Studio Code 2023年11月发布

排版&#xff1a;Alan Wang 我们很高兴地宣布 Visual Studio Code 的 Python 和 Jupyter 扩展将于 2023 年 11 月发布&#xff01; 此版本包括以下公告&#xff1a; 改进了使用 Shift Enter 在终端中运行当前行弃用内置 linting 和格式设置功能对 Python linting 扩展的改进重…...

算法通关村——数字中的统计、溢出、进制转换处理模板

数字与数学基础问题 1、数字统计 1.1、符号统计 LeetCode1822. 给定一个数组&#xff0c;求所有元素的乘积的符号&#xff0c;如果最终答案是负的返回-1&#xff0c;如果最终答案是正的返回1&#xff0c;如果答案是0返回0. 这题其实只用看数组中0和负数的个数就好了&#x…...

ESP01S通过心知天气获取天气和时间信息

ESP01S通过心知天气获取天气和时间信息 设置STA模式 ATCWMODE1 连接wifi ATCWJAP"wifi名称","wifi密码"3.设置时间地域 ATCIPSNTPCFG1,8获取时间 ATCIPSNTPTIME?返回&#xff1a; CIPSNTPTIME:Fri Nov 17 17:09:22 2023 OK连接心知服务器 ATCIPSTAR…...

docker容器内core dumped却找不到core文件

1. 检查ulimit&#xff0c; 使用命令&#xff1a; ulimit -a rootb7c19f6da1e3:/usr# ulimit -a core file size (blocks, -c) unlimited data seg size (kbytes, -d) unlimited scheduling priority (-e) 0 file size (blocks…...

ubuntu提高 github下载速度

Github一般用于Git的远程仓库&#xff0c;由于服务器位于国外&#xff0c;国内访问速度比较慢&#xff0c;为了提高访问速度&#xff0c;决定绕过DNS域名解析。 获取Github的IP地址 按下ctrl&#xff0b;alt&#xff0b;T打开命令终端&#xff0c;输入&#xff1a; nslookup gi…...

Node.js之path路径模块

让我为大家介绍一下path路径模块吧&#xff01; 什么是path路径模块&#xff1f; path 模块是 Node.s 官方提供的、用来处理路径的模块。它提供了一系列的方法和属性&#xff0c;用来满足用户对路径的处理需求。 介绍三个关于path模块的方法&#xff1a; path.join() 方法&…...

TCP与UDP协议

TCP与UDP协议 1、TCP协议&#xff1a; 1、TCP特性&#xff1a; TCP 提供一种面向连接的、可靠的字节流服务。在一个 TCP 连接中&#xff0c;仅有两方进行彼此通信。广播和多播不能用于 TCP。TCP 使用校验和&#xff0c;确认和重传机制来保证可靠传输。TCP 给数据分节进行排序…...

“ /^A-Z:\\{1,2}^/:\*\?<>\|+\.(jpg|gif|png|bmp)$/i ”这个正则表达式的理解

这个正则表达式可以分解为以下几个部分&#xff1a; ^&#xff1a;这是一个开始符号&#xff0c;表示匹配必须从字符串的开始部分开始。/&#xff1a;这是一个斜杠符号&#xff0c;通常在正则表达式中用来表示特殊字符的转义。A-Z:&#xff1a;这部分表示匹配一个大写字母后跟…...

批量下载Sentinel数据脚本2023

批量下载Sentinel数据脚本2023 那些最好的程序员不是为了得到更高的薪水或者得到公众的仰慕而编程&#xff0c;他们只是觉得这是一件有趣的事情&#xff01; 批量下载Sentinel数据脚本2023 批量下载Sentinel数据脚本2023&#x1f33f;前言&#x1f33f;脚本地址&#x1f4e7;Su…...

7.4.分块查找

一.分块查找的算法思想&#xff1a; 1.实例&#xff1a; 以上述图片的顺序表为例&#xff0c; 该顺序表的数据元素从整体来看是乱序的&#xff0c;但如果把这些数据元素分成一块一块的小区间&#xff0c; 第一个区间[0,1]索引上的数据元素都是小于等于10的&#xff0c; 第二…...

Java 语言特性(面试系列1)

一、面向对象编程 1. 封装&#xff08;Encapsulation&#xff09; 定义&#xff1a;将数据&#xff08;属性&#xff09;和操作数据的方法绑定在一起&#xff0c;通过访问控制符&#xff08;private、protected、public&#xff09;隐藏内部实现细节。示例&#xff1a; public …...

渗透实战PortSwigger靶场-XSS Lab 14:大多数标签和属性被阻止

<script>标签被拦截 我们需要把全部可用的 tag 和 event 进行暴力破解 XSS cheat sheet&#xff1a; https://portswigger.net/web-security/cross-site-scripting/cheat-sheet 通过爆破发现body可以用 再把全部 events 放进去爆破 这些 event 全部可用 <body onres…...

系统设计 --- MongoDB亿级数据查询优化策略

系统设计 --- MongoDB亿级数据查询分表策略 背景Solution --- 分表 背景 使用audit log实现Audi Trail功能 Audit Trail范围: 六个月数据量: 每秒5-7条audi log&#xff0c;共计7千万 – 1亿条数据需要实现全文检索按照时间倒序因为license问题&#xff0c;不能使用ELK只能使用…...

NFT模式:数字资产确权与链游经济系统构建

NFT模式&#xff1a;数字资产确权与链游经济系统构建 ——从技术架构到可持续生态的范式革命 一、确权技术革新&#xff1a;构建可信数字资产基石 1. 区块链底层架构的进化 跨链互操作协议&#xff1a;基于LayerZero协议实现以太坊、Solana等公链资产互通&#xff0c;通过零知…...

JVM暂停(Stop-The-World,STW)的原因分类及对应排查方案

JVM暂停(Stop-The-World,STW)的完整原因分类及对应排查方案,结合JVM运行机制和常见故障场景整理而成: 一、GC相关暂停​​ 1. ​​安全点(Safepoint)阻塞​​ ​​现象​​:JVM暂停但无GC日志,日志显示No GCs detected。​​原因​​:JVM等待所有线程进入安全点(如…...

全面解析各类VPN技术:GRE、IPsec、L2TP、SSL与MPLS VPN对比

目录 引言 VPN技术概述 GRE VPN 3.1 GRE封装结构 3.2 GRE的应用场景 GRE over IPsec 4.1 GRE over IPsec封装结构 4.2 为什么使用GRE over IPsec&#xff1f; IPsec VPN 5.1 IPsec传输模式&#xff08;Transport Mode&#xff09; 5.2 IPsec隧道模式&#xff08;Tunne…...

初学 pytest 记录

安装 pip install pytest用例可以是函数也可以是类中的方法 def test_func():print()class TestAdd: # def __init__(self): 在 pytest 中不可以使用__init__方法 # self.cc 12345 pytest.mark.api def test_str(self):res add(1, 2)assert res 12def test_int(self):r…...

技术栈RabbitMq的介绍和使用

目录 1. 什么是消息队列&#xff1f;2. 消息队列的优点3. RabbitMQ 消息队列概述4. RabbitMQ 安装5. Exchange 四种类型5.1 direct 精准匹配5.2 fanout 广播5.3 topic 正则匹配 6. RabbitMQ 队列模式6.1 简单队列模式6.2 工作队列模式6.3 发布/订阅模式6.4 路由模式6.5 主题模式…...

【分享】推荐一些办公小工具

1、PDF 在线转换 https://smallpdf.com/cn/pdf-tools 推荐理由&#xff1a;大部分的转换软件需要收费&#xff0c;要么功能不齐全&#xff0c;而开会员又用不了几次浪费钱&#xff0c;借用别人的又不安全。 这个网站它不需要登录或下载安装。而且提供的免费功能就能满足日常…...