sql业务场景分析思路参考

news2024/11/17 11:33:47

1、时间可以进行排序,也可以用聚合函数对时间求最大值max(时间)

例如下面的例子:取最晚入职的人,那就是将入职时间倒序排序,然后limit 1

表:

 场景:查找最晚入职员工的所有信息

select * from employees order by hire_date desc limit 1

方法二:子查询 

select * from employees where hire_date=(select max(hire_date) from employees)

2、 limit可以单独两个参数使用,也可以和offset一起使用

例如:

表:

业务需求: 

代码:limit两个参数单独使用:倒序排序,从第三行开始显示,显示一行数据

select * from employees order by hire_date desc limit 2,1

或者:结合offset使用:

select * from employees order by hire_date desc limit 1 offset 2

3、内连接、左连接、右连接的连接后表的合并情况:

(1)两表内连接的结果是将后面的表拼接在前面的表后面

看例子:两个表:

内连接代码:

select *
from salaries sa join dept_manager  de on sa.emp_no=de.emp_no

结果: 

 (2)右连接

两个表:

 上面的表右连接下面的表,代码如下:

select *
from employees e right join dept_emp d on e.emp_no=d.emp_no

结果:

虽然是右连接,但是上面的表在right join的前面,前面的表右连接后面的表,那前面的表就在最后的结果中在前面展示,后面的表在后面展示,但是右连接是保留后面的表的所有行

4、新型思路:找第二大的数据,先把第一大的数据筛选掉,然后再在表格中找第一大也就是原本表格的第二大的数据了

表:

需求: 

代码:

select e.emp_no,s.salary,e.last_name,e.first_name
from employees e join salaries s on e.emp_no=s.emp_no
where s.salary=(
    select max(s2.salary)
    from salaries s2
    where s2.salary<(select max(salary) from salaries) 
)

 题解:

结果:

4、两个表连接,输出在职员工自入职以来的薪水涨幅情况

业务需求:

表:

思路:

用两次join,连接三个表,先连接前两个表,后连接第三个表,然后用当前工资减去入职工资。

结果:

5、MySql在处理group by和非聚合列的关系上有变动:一定的版本或者关系允许,使用group by时有select后面有非聚合列的出现:

官方解释:

官网链接:MySQL :: MySQL 5.7 Reference Manual :: 12.19.3 MySQL Handling of GROUP BY 

例子:

表:

业务需求:

代码:

select de.dept_no,dep.dept_name,count(de.dept_no)
from dept_emp de 
right join departments dep on de.dept_no=dep.dept_no
join salaries s on de.emp_no=s.emp_no
group by de.dept_no
order by de.dept_no

结果:

 

解释:

 

 

 

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

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

相关文章

maven项目、idea抽风问题解决

开发的时候遇到奇奇怪怪的非技术问题&#xff0c;解决起来会费时间&#xff0c;做无用功。   这里记录常见的情况和解决方法 1.未识别maven项目 文件的图标变成了这种橙色的&#xff0c;而且有主启动函数也不能run 右键pom文件&#xff0c;点击Add as Maven Project 如果…

215. 数组中的第K个最大元素(中等)

215. 数组中的第K个最大元素 1. 题目描述2.详细题解3.代码实现3.1 Python3.2 Java 1. 题目描述 题目中转&#xff1a;215. 数组中的第K个最大元素 2.详细题解 快速排序算法在每一轮排序中&#xff0c;随机选择一个数字 x x x&#xff0c;根据与 x x x的大小关系将要排序的数…

C++ 引用——引用的基本语法

引用的基本使用 作用&#xff1a;给变量起别名 语法&#xff1a;数据类型 &别名 原名 示例&#xff1a; 运行结果&#xff1a;

【网络安全】漏洞挖掘之Spring Cloud注入漏洞

漏洞描述 Spring框架为现代基于java的企业应用程序(在任何类型的部署平台上)提供了一个全面的编程和配置模型。 Spring Cloud 中的 serveless框架 Spring Cloud Function 中的 RoutingFunction 类的 apply 方法将请求头中的“spring.cloud.function.routing-expression”参数…

【微信小程序开发实战项目】——花店微信小程序实战项目(4)

&#x1f468;‍&#x1f4bb;个人主页&#xff1a;开发者-曼亿点 &#x1f468;‍&#x1f4bb; hallo 欢迎 点赞&#x1f44d; 收藏⭐ 留言&#x1f4dd; 加关注✅! &#x1f468;‍&#x1f4bb; 本文由 曼亿点 原创 &#x1f468;‍&#x1f4bb; 收录于专栏&#xff1a…

创新引领,构筑产业新高地

在数字经济的浪潮中&#xff0c;成都树莓集团以创新驱动为核心&#xff0c;通过整合行业资源、优化服务、培养数字产业人才等措施&#xff0c;致力于打造产业高地&#xff0c;推动地方经济的高质量发展。 一、创新驱动&#xff0c;引领产业发展 1、引入新技术、新模式&#xf…

作为图形渲染API,OpenGL和Direct3D的全方位对比。

当你在网页看到很多美轮美奂的图形效果&#xff0c;3D交互效果&#xff0c;你知道是如何实现的吗&#xff1f;当然是借助图形渲染API了&#xff0c;说起这个不就不得说两大阵营&#xff0c;OpenGL和Direct3D&#xff0c;贝格前端工场在本文对二者做个详细对比。 一、什么是图形…

05-《猪笼草》

猪笼草 猪笼草是猪笼草属全体物种的总称。属于热带食虫植物&#xff0c;原产地主要为旧大陆热带地区。其拥有一个独特的吸取营养的器官——捕虫笼&#xff0c;捕虫笼呈圆筒形&#xff0c;下半部稍膨大&#xff0c;笼口上具有盖子&#xff0c;因其形状像猪笼而得名。 猪笼草 形…

【MySQL】事务实现原理

目录 事务 如何使用 ACID 原子性(Atomicity) 原子性实现原理 持久性(Durability) 持久性实现原理 隔离性 隔离级别 读未提交 读已提交 可重复读 串行化 隔离级别原理 锁 共享锁&独占锁 意向锁 索引记录锁 间隙锁 临键锁 插入意向锁 自增锁 MVCC 实现…

【杂交版】植物大战僵尸杂交版v2.1最新版本下载链接

B站游戏作者潜艇伟伟迷于6月13日中午更新了植物大战僵尸杂交版2.1版本&#xff0c;有老版本的也可以完美继承存档数据。 不多废话下载链接放上&#xff1a; 夸克网盘链接&#xff1a;https://pan.quark.cn/s/095de551d1d1 UC网盘链接&#xff1a;https://drive.uc.cn/s/86debb3…

pdf压缩教程:pdf怎么压缩的小一点?6个方法轻松搞定!

大多数用户在上传PDF文件到网站时&#xff0c;常常遇到文件大小限制的问题。当PDF文件含有大量图片、图形和内容时&#xff0c;文件大小会变得过大&#xff0c;因此我们需要将其压缩至网站所要求的大小&#xff0c;才能成功上传。那么&#xff0c;pdf怎么压缩的小一点 呢&#…

微信扫普通二维码打开小程序-详细实现

微信扫普通二维码链接打开小程序的官方文档地址&#xff1a;扫普通链接二维码打开小程序 | 微信开放文档 我们讲一下开发中的避坑点。 获取链接参数 本人项目采用UNIAPP&#xff0c;所以在开发的时候&#xff0c;牵扯打开页面的特殊性&#xff0c;在onLoad生命周期不执行。在…

华为OD机试2024年最新题库 JAVA C卷+D卷

目录 专栏导读华为OD机试算法题太多了&#xff0c;知识点繁杂&#xff0c;如何刷题更有效率呢&#xff1f; 一、逻辑分析二、数据结构1、线性表① 数组② 双指针 2、map与list3、队列4、链表5、栈6、滑动窗口7、二叉树8、并查集9、矩阵 三、算法1、基础算法① 贪心思维② 二分查…

#招聘数据分析#2024年6月前程无忧招聘北上广深成渝对比情况

#招聘数据分析#2024年6月前程无忧招聘北上广深成渝对比情况 0、根据前程无忧不完全样本统计&#xff0c;北上广深成都重庆平均月工资从高到低依次为 北京15441元、上海14425元、深圳13310元、广州11192元、成都10539元、重庆10290。 1、成都招聘样本数全量35228个&#xff0c…

for nested data item, row-key is required.报错解决

今天差点被一个不起眼的bug搞到吐&#xff0c;就是在给表格设置row-key的时候&#xff0c;一直设置不成功&#xff0c;一直报错缺少row-key&#xff0c;一共就那两行代码 实在是找不到还存在什么问题... 先看下报错截图... 看下代码 我在展开行里面用到了一个表格 并且存放表格…

Java面试八股之MySQL数据库每天5万以上的增量数据,预计运维5年怎么优化

面对每天5万以上的增量数据&#xff0c;且需运维5年的MySQL数据库&#xff0c;优化策略应该围绕提升性能、可扩展性、数据管理以及成本效益。以下是一些具体的优化措施&#xff1a; 1. 数据库架构优化 分表: 可以根据时间或者业务逻辑将数据分散到多个物理表中&#xff0c;比…

智能运维场景探索 | 运营分析

【本场景来源于 擎创科技《一体化数智运维AIOps解决方案》白皮书&#xff0c;经过重新编写】 该场景主要围绕生产运行、运营决策两个维度进行展开&#xff0c;通过对配置、性能、业务等运行数据的加工计算&#xff0c;形成可量化运营效果、可衡量发展方向的运营数据。整体以低…

一文读懂轻量日志收集系统Loki工作原理

Loki 是由 Grafana Labs 开发的日志聚合系统&#xff0c;设计目标是提供一种高效、低成本的日志收集和查询解决方案。与传统的日志系统&#xff08;如 ELK Stack&#xff09;不同&#xff0c;Loki 不会对日志内容进行索引&#xff0c;而是仅对日志的元数据进行索引&#xff0c;…

都有哪些离线翻译器软件?没网就用这4个

经历完痛苦的期末考&#xff0c;可算是千盼万盼等来了日思夜想的暑假&#xff01;趁着这大好时光&#xff0c;怎么能不来一场出国游呢~ 不知道有多少小伙伴和我一样&#xff0c;出国玩最怕的就是语言不通&#xff0c;不管是吃饭还是游玩体验感都会大受影响~好在多出国玩了几趟…