mysql经典案例带解析(你没见过的全新版本)55题

news2025/7/7 17:40:43

首先给出初始表格
emp表
在这里插入图片描述

表格创建命令

create table emp(id int primary key auto_increment,name varchar(20),job varchar(20),manager int,hiredate date,sal double(8,2),comm double(6,2),dept_id int)charset=utf8;

create table dept(id int primary key auto_increment,name varchar(20),loc varchar(30))charset=utf8;

insert  into `dept`(`id`,`name`,`loc`) values (1,'神仙','天庭'),(2,'妖怪','盘丝洞'),(3,'普通人','北京'),(4,'赛亚人','外星球');

insert  into `emp`(`id`,`name`,`job`,`manager`,`hiredate`,`sal`,`comm`,`dept_id`) values (1,'孙悟空','销售',4,'1980-12-17',800.00,NULL,1),(2,'猪八戒','销售',4,'1981-02-20',1600.00,300.00,1),(3,'沙僧','销售',4,'1981-02-22',1250.00,500.00,1),(4,'唐僧','销售经理',8,'1981-04-02',2975.00,NULL,1),(5,'刘备','项目经理',NULL,'1981-09-28',1250.00,1400.00,3),(6,'关羽','程序员',5,'1981-05-01',2850.00,NULL,3),(7,'张飞','程序员',5,'1981-06-09',2450.00,NULL,3),(8,'观音','CEO',NULL,'1981-11-17',5000.00,NULL,1),(9,'白骨精','人事',8,'1981-09-08',1500.00,0.00,2),(10,'蜘蛛精','人事',8,'1981-12-03',950.00,NULL,2),(11,'黑熊怪','市场',8,'1981-12-03',3000.00,NULL,2);

接下来是题目
查询工资大于等于3000的员工姓名和工资(salary)

SELECT name,sal
FROM emp
WHERE sal>= 3000;

查询1号部门的员工姓名和工作

SELECT name,job FROM emp WHERE dept_id= 1;

查询工资大于等于3000的员工姓名和工资

SELECT name,sal FROM emp WHERE sal>= 3000;

查询1号部门的员工姓名和工作

SELECT name,job FROM emp WHERE dept_id= 1;

查询奖金等于300的员工姓名,工资和工作

SELECT name,job,sal FROM emp WHERE comm= 300;

查询1号部门工资大于2000的员工信息

SELECT * FROM emp WHERE sal >2000 and dept_id=1;

查询3号部门或工资等于5000的员工信息

SELECT * FROM emp WHERE sal =5000 or dept_id=3;

查询出CEO和项目经理的名字

select name from emp where job='CEO' or job='项目经理';

查询工资为3000,1500和5000的员工信息

select * from emp where sal in (3000,5000,1500);

查询工资不等于3000,1500和5000的员工信息

select * from emp where sal NOT in (3000,5000,1500);

查询工资在1000到2000之间的员工信息

select * from emp where sal>=1000 and sal<=2000;

查询工资在1000到2000以外的员工信息

select * from emp where sal<=1000 OR sal>=2000;

查询有领导的员工姓名和领导id

select name,manager from emp where manager is not null;

查询没有领导的员工姓名和领导id

select name from emp where manager is null;

查询员工表中出现了哪几种不同的工作

select distinct job from emp;

查询员工表中出现了那几个部门的id

select distinct dept_id from emp;

查询姓孙的员工姓名

 select * from emp where name like “孙%;

查询名字最后一个字是精的员工信息

SELECT * FROM emp WHERE name LIKE "%精";

查询工作中包含销售的员工信息

select * from emp where job like "%销售%";

查询工作中第二个字是售的员工信息

select * from emp where job like "_售%";

查询名字中包含僧的员工并且工资高于2000的员工信息

select* from emp where name like "%僧%" and sal>2000;

查询1号和2号部门中工作以市开头的员工信息

select * from emp where job like "市%" and dept_id in("1","2");

查询所有员工的姓名和工资 按照工资升序排序

select name,sal from emp order by sal;

查询所有员工的姓名和工资 按照工资降序排序

select name,sal from emp order by sal desc;

查询所有员工姓名 工资和部门id 按照部门id降序排序,如果部门id一致则按照工资升序排序

select name,sal from emp order by sal desc;

查询员工表中3号部门工资高于1500的员工信息

select*from emp sal>1500 and dept_id="3";

查询2号部门员工或者没有领导的员工信息

select*from emp where  dept_id="2" or manager is not null;

查询有领导的员工姓名,工资按照工资降序排序

select name,sal from emp where manager is null  order by sal desc;

查询2号和3号部门的员工姓名和入职日期hiredate 按照入职日期降序排序

select name,hiredate from emp where dept_id in("2","3") order by hiredate desc;

查询名字中包含僧和包含精的员工姓名

select name from emp where name like%%"or%%;

查询工资高于2000的工作有哪几种?

select distinct job from emp where sal>"2000";

查询工资最高的前三个员工

select * from emp order by sal desc limit 0,3;

查询员工表按照id排序, 第2页的5条数据

select * from emp order by id limit 2,5;

查询员工表按照id排序, 第3页的4条数据

select * from emp order by id limit 3,4;

查询3号部门工资最低的员工姓名和工资

select name,min(sal) from emp where dept_id=3;

查询工作不是人事的员工中工资降序第二页的3条数据

select * from emp  where job !="人事" order by sal desc limit 3,3 ;
查询每个员工的姓名,工资和年终奖(年终奖=5个月的工资)
select name,sal,sal*5 年终奖 from emp;

给3号部门所有员工涨薪5块钱

update emp set sal=sal+5 where dept_id=3;

查询没有领导的员工和3号部门的员工,工资降序取前三条

select*from emp where manager or dept_id="3" is null oder by sal desc limit 3;

查询2号部门的最高工资

select max(sal) from emp where dept_id=2;

查询有领导的员工中工资在1000到2000之间的人数

select count(*) from emp where manager is not null and sal between "1000" and "2000" ;

查询3号部门的工资总和

select sum(sal) from emp where dept_id=3;

查询程序员和销售的总人数

select count(*) from emp where job ="程序员" or job="销售" ;

查询1号部门有领导的员工的平均工资

select avg(sal) from emp where manager is null and dept_id="1";

查询1号部门的最低工资和最高工资

select max(sal) 最高工资,min(sal) 最低工资 from emp where dept_id=1;

查询和销售相关的工作人数

select job,count(*) c from emp group by job ="销售" ;

查询工资不是1500和3000的员工人数

select count(*) from emp where sal not between "1500" and "3000" ;

查询1号部门出现了哪几种工作

 select distinct job from emp where dept_id="1";

查询每个部门的平均工资

select dept_id,avg(sal) from emp group by dept_id;

查询每种工作的人数

select job,count(*) c from emp group by job ;

查询每个部门的最高工资

select dept_id,max(sal) from emp group by dept_id;

查询每种工作的最低工资

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

查询每个部门的工资总和

select dept_id,sum(sal) from emp group by dept_id;

查询每个部门的工资总和,只查询有领导的员工, 并且要求工资总和大于5400

select dept_id,sum(sal) from emp where manager is not null group by dept_id having sum(sal)>5400;

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

AcrelEMS-BP生物制药工厂能效管理系统

安科瑞 华楠 聚焦全厂能源采集、监控、分析、调度,降本提效,实现企业双碳目标;致力于全域化设备监视、巡检、故障报警、工单管理,运维优化,提升设备使用效率。 综合自动化系统 110kV及以下变电站综合自动化系统实现遥测、遥信、遥控、事故追忆、故障录波、安全防护、上传调度 …

搭建接口平台YApi详解(含搭建node环境)

公司之前使用的doclever 感觉不太好用&#xff0c;打算私有化部署YApi 步骤 准备使用yapi的可视化部署&#xff0c;需要有node环境 安装node环境 测试一下有没有node环境 如下就是有 [root192 sbin]# node -v v14.17.0 [root192 sbin]# npm -v 6.14.13没有就创建 cd /us…

webpack5 打包环境抽离分环境基本配置

两种开发模式 开发模式&#xff1a;代码能编译自动化运行生产模式&#xff1a;代码编译优化输出Webpack 基本功能 开发模式&#xff1a;可以编译 ES Module 语法生产模式&#xff1a;可以编译 ES Module 语法&#xff0c;压缩 js 代码Webpack 配置文件5 个核心概念 entryoutput…

FL Studio21最新演示测试版本下载FL水果V21

FL Studio是市场上最受欢迎的音乐制作软件之一。它被世界各地的许多专业制作人和艺术家使用。FL Studio音乐软件的每日下载量超过40&#xff0c;000次&#xff0c;其增长是不断的&#xff0c;而且没有迹象表明很快就会放缓。随着新的 FL 产品版本在 Windows 和 Mac 上不断发布&…

25.gateway的Filter 过滤器工厂(springcloud)

1 概述 gateway 里面的过滤器和 Servlet 里面的过滤器&#xff0c;功能差不多&#xff0c;路由过滤器可以用于修改进入Http 请求和返回 Http 响应2 分类 2.1 按生命周期分两种 pre 在业务逻辑之前 post 在业务逻辑之后2.2 按种类分也是两种 GatewayFilter 需要配置某个路由&…

阿里同步神器Canal原理+安装+快速使用

文章目录前言Canal简介MySQL主备复制原理canal 工作原理1、MySQL配置1.1 修改MySQL配置支持binloglog-binmysql-binbinlog-formatROW1.2 创建canal用户1.3 重启mysql服务1.4 基本的查看binlog命令2、下载安装canal2.1 解压canal2.2 配置与mysql信息2.3 启动canal3. 快速使用3.1…

【文件传输】实现下载

文章目录下载&#xff1a;下载的过程&#xff1a;单文件传输&#xff1a;多文件传输&#xff1a;下载&#xff1a; 如下图&#xff1a; 如果刚发完size&#xff0c;客户端不回复ok&#xff0c;直接发送数据&#xff0c;会出现粘包问题。如果想要确保客户端收到数据&#xff0…

流行的前端开源报表工具有哪些?适合在企业级应用的

前端开源报表工具有很多&#xff0c;但是如果是企业级应用真心不建议选用。比如非要选择开源的报表工具&#xff0c;你需要投入一个或多个程序员来做这个事情&#xff0c;他们还得先学习这个开源报表工具的界面、功能使用操作等等&#xff0c;尤其是很多开源工具的学习资料还是…

dpdk Vhost 库

1、 怎么实现vhost_dev的VhostOps的vhost_set_vring_kick和vhost_set_vring_call&#xff1b; vhost_net kernel方式的vhost_set_vring_kick和vhost_set_vring_call依赖于/dev/vhost_net的ioctl。 有两种实现方式&#xff1a; 1、guest是server&#xff0c;dpdk vhost user是…

Sourcetree的实际使用开发笔记

目录 前言 一、Sourcetree是什么 二、Sourcetree使用步骤 1.创建仓库 2.拉取和推送的使用 3.创建新的自己的分支 三、使用Sourcetree来进行不提交本地的代码&#xff0c;而获取最新的代码拉取 总结 前言 本章主要是记录一下Sourcetree的基本使用功能。 一、Sourcetree是…

Android:Binder思考笔记

基础知识 进程空间划分 一个进程空间分为用户空间与内核空间。用户空间与内核空间都是虚拟内存&#xff0c;映射到物理内存。所有进程的内核空间映射到同一块物理内存&#xff0c;是共享的二者区别&#xff1a; 进程间&#xff0c;用户空间的数据不可共享&#xff0c;即用户空…

线性与树型数据结构可视化模拟器

线性与树型数据结构可视化模拟器 题目2:线性与树型数据结构可视化模拟器 [问题描述] 数据结构课程是计算机类专业的核心课程之一&#xff0c;是计算机科学与技术必修的专业基础课程。数据结构研究的范围和计算机软件有着密切的联系。课程涉及到大量的概念、定义以及数据结构的…

JS数据类型的探究

JS数据类型的探究 分思考三部曲? 是什么?为什么?怎么做? 一:什么是数据类型? 在程序设计的类型系统中&#xff0c;数据类型&#xff08;英语&#xff1a;Data type&#xff09;&#xff0c;又称资料型态、资料型别&#xff0c;是用来约束数据的解释。在编程语言中&…

我去面试聊了半天MySQL索引,结果面试官黑脸让我回家等结果...

V-xin&#xff1a;ruyuanhadeng获得600页原创精品文章汇总PDF 目录 1、面试真题2、面试官心理分析3、面试题剖析 1、面试真题 MySQ索引的原理和数据结构能介绍一下吗&#xff1f;b树和b-树有什么区别&#xff1f;MySQL聚簇索引和非聚簇索引的区别是什么&#xff1f;他们分别是…

影响网站排名的4个因素,教你提高网站排名的方法

我们优化网站的目的是&#xff0c;使网站的排名靠前&#xff0c;让更多的用户看到并访问网站&#xff0c;达到营销的效果。网站排名靠前&#xff0c;可以提高企业品牌的知名度&#xff0c;对网站是非常有益的。在网络多变的环境下&#xff0c;影响网站排名有哪些因素呢&#xf…

JAVA使用springboot整合佳博标签打印机(三)

在JAVA使用springboot整合佳博标签打印机&#xff08;二&#xff09;的文章中使用的是花生壳进行的内网穿透 花生壳内网穿透会有异常情况,因为使用的是花生壳免费版本的内网穿透,可能会有服务异常的情况出现,免费服务没有保障 优化方案使用NGINX替换花生壳来实现内网穿透 准…

从头开始实现一个留言板-README

前言 仓库地址&#xff1a;da1234cao/RestFulAPIDemo 由于我没做过C服务器的开发&#xff0c;没有这方面的工程经验&#xff0c;所以代码中&#xff0c;大概率有一些我意识不到的问题&#xff0c;欢迎提issue。 PS: 代码使用C实现restful接口&#xff0c;给前端提供数据读取…

如何封装一个实用的上传组件

前言 马上放假了&#xff0c;时间上相对宽裕&#xff0c;对最近做的东西进行一些总结。今天我们来看一个非常实用的组件&#xff0c;上传组件 我们先从组件的定位、组件的应用场景、组件的特性几个方面进行归纳 定位&#xff1a; 对于上传组件&#xff0c;基础的组件功能属…

【C++】-- 继承

目录 继承的概念及定义 继承的概念 继承的定义 定义格式 继承基类成员访问方式的变化 基类和派生类对象赋值转换 子类对象可以赋值给父类对象/指针/引用 派生类对象赋值给基类的对象 派生类对象赋值给基类的指针 派生类对象赋值给基类的引用 继承中的作用域 派生类的默认成员函…

IM开源项目OpenIM部署文档-从准备工作到nginx配置

IM开源项目OpenIM部署文档-从准备工作到nginx配置 2022-11-14 22:27OpenIM 一、准备工作 运行环境 linux系统即可&#xff0c; Ubuntu 7.5.0-3ubuntu1~18.04最优 图片视频文件存储 支持cos/MinIO https/wss协议 1. 需申请域名或者子域名&#xff08;web im端登录注册及im…