当前位置: 首页 > 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…...

第19节 Node.js Express 框架

Express 是一个为Node.js设计的web开发框架&#xff0c;它基于nodejs平台。 Express 简介 Express是一个简洁而灵活的node.js Web应用框架, 提供了一系列强大特性帮助你创建各种Web应用&#xff0c;和丰富的HTTP工具。 使用Express可以快速地搭建一个完整功能的网站。 Expre…...

超短脉冲激光自聚焦效应

前言与目录 强激光引起自聚焦效应机理 超短脉冲激光在脆性材料内部加工时引起的自聚焦效应&#xff0c;这是一种非线性光学现象&#xff0c;主要涉及光学克尔效应和材料的非线性光学特性。 自聚焦效应可以产生局部的强光场&#xff0c;对材料产生非线性响应&#xff0c;可能…...

【Java学习笔记】Arrays类

Arrays 类 1. 导入包&#xff1a;import java.util.Arrays 2. 常用方法一览表 方法描述Arrays.toString()返回数组的字符串形式Arrays.sort()排序&#xff08;自然排序和定制排序&#xff09;Arrays.binarySearch()通过二分搜索法进行查找&#xff08;前提&#xff1a;数组是…...

【磁盘】每天掌握一个Linux命令 - iostat

目录 【磁盘】每天掌握一个Linux命令 - iostat工具概述安装方式核心功能基础用法进阶操作实战案例面试题场景生产场景 注意事项 【磁盘】每天掌握一个Linux命令 - iostat 工具概述 iostat&#xff08;I/O Statistics&#xff09;是Linux系统下用于监视系统输入输出设备和CPU使…...

Keil 中设置 STM32 Flash 和 RAM 地址详解

文章目录 Keil 中设置 STM32 Flash 和 RAM 地址详解一、Flash 和 RAM 配置界面(Target 选项卡)1. IROM1(用于配置 Flash)2. IRAM1(用于配置 RAM)二、链接器设置界面(Linker 选项卡)1. 勾选“Use Memory Layout from Target Dialog”2. 查看链接器参数(如果没有勾选上面…...

MySQL中【正则表达式】用法

MySQL 中正则表达式通过 REGEXP 或 RLIKE 操作符实现&#xff08;两者等价&#xff09;&#xff0c;用于在 WHERE 子句中进行复杂的字符串模式匹配。以下是核心用法和示例&#xff1a; 一、基础语法 SELECT column_name FROM table_name WHERE column_name REGEXP pattern; …...

pikachu靶场通关笔记22-1 SQL注入05-1-insert注入(报错法)

目录 一、SQL注入 二、insert注入 三、报错型注入 四、updatexml函数 五、源码审计 六、insert渗透实战 1、渗透准备 2、获取数据库名database 3、获取表名table 4、获取列名column 5、获取字段 本系列为通过《pikachu靶场通关笔记》的SQL注入关卡(共10关&#xff0…...

2025季度云服务器排行榜

在全球云服务器市场&#xff0c;各厂商的排名和地位并非一成不变&#xff0c;而是由其独特的优势、战略布局和市场适应性共同决定的。以下是根据2025年市场趋势&#xff0c;对主要云服务器厂商在排行榜中占据重要位置的原因和优势进行深度分析&#xff1a; 一、全球“三巨头”…...

SiFli 52把Imagie图片,Font字体资源放在指定位置,编译成指定img.bin和font.bin的问题

分区配置 (ptab.json) img 属性介绍&#xff1a; img 属性指定分区存放的 image 名称&#xff0c;指定的 image 名称必须是当前工程生成的 binary 。 如果 binary 有多个文件&#xff0c;则以 proj_name:binary_name 格式指定文件名&#xff0c; proj_name 为工程 名&…...

Razor编程中@Html的方法使用大全

文章目录 1. 基础HTML辅助方法1.1 Html.ActionLink()1.2 Html.RouteLink()1.3 Html.Display() / Html.DisplayFor()1.4 Html.Editor() / Html.EditorFor()1.5 Html.Label() / Html.LabelFor()1.6 Html.TextBox() / Html.TextBoxFor() 2. 表单相关辅助方法2.1 Html.BeginForm() …...