LeetCode MySQL 569. 员工薪水中位数(over窗口函数)
文章目录
- 1. 题目
- 2. 解题
1. 题目
Employee 表包含所有员工。Employee 表有三列:员工Id,公司名和薪水。
+-----+------------+--------+
|Id | Company | Salary |
+-----+------------+--------+
|1 | A | 2341 |
|2 | A | 341 |
|3 | A | 15 |
|4 | A | 15314 |
|5 | A | 451 |
|6 | A | 513 |
|7 | B | 15 |
|8 | B | 13 |
|9 | B | 1154 |
|10 | B | 1345 |
|11 | B | 1221 |
|12 | B | 234 |
|13 | C | 2345 |
|14 | C | 2645 |
|15 | C | 2645 |
|16 | C | 2652 |
|17 | C | 65 |
+-----+------------+--------+
请编写SQL查询来查找每个公司的薪水中位数。
挑战点:你是否可以在不使用任何内置的SQL函数的情况下解决此问题。
+-----+------------+--------+
|Id | Company | Salary |
+-----+------------+--------+
|5 | A | 451 |
|6 | A | 513 |
|12 | B | 234 |
|9 | B | 1154 |
|14 | C | 2645 |
+-----+------------+--------+
来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/median-employee-salary
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。
2. 解题
- 算出每个公司的人数、薪水的排序
- where 选择,根据人数奇偶筛选
# Write your MySQL query statement belowselect Id, Company, Salary
from
(select *, row_number() over (partition by Company order by Salary) rnk,count(*) over (partition by Company) numfrom Employee
) t
where((num%2=1 and rnk = floor(num/2)+1)or(num%2=0 and (rnk = floor(num/2) or rnk = floor(num/2)+1)))
我的CSDN博客地址 https://michael.blog.csdn.net/
长按或扫码关注我的公众号(Michael阿明),一起加油、一起学习进步!
LeetCode MySQL 569. 员工薪水中位数(over窗口函数)相关推荐
- 【LeetCode-SQL】569. 员工薪水中位数
目录 一.题目 二.解决 1.窗口函数 2.自关联后分组筛选 三.参考 一.题目 表: Employee +--------------+---------+ | Column Name | Type ...
- Mysql练习题13- 员工薪水中位数
需求:请编写SQL查询来查找每个公司的薪水中位数.挑战点:你是否可以在不使用任何内置的SQL函数的情况下解决此问题. 展示效果: Id Company Salary 5 A 451 6 A 513 1 ...
- 【每日SQL打卡】DAY 4丨员工薪水中位数【难度困难】
活动介绍: 「数据仓库技术交流群」已经正式启动每日SQL打卡,帮助大家扎实基础,努力工作之余,别忘了自我提升. 欢迎报名和邀请小伙伴参与,一个人可能走得很快,但一群人会走得很远.
- LeetCode MySQL解题目录
已完成的 LeetCode MySQL 数据库题目.点击查看我的 LeetCode 算法解题目录. 已解决 123/123 - 简单 54 中等 51 困难 18 前置入门学习 MySQL 基本查询. ...
- mysql查询中位数(窗口函数的使用)
mysql查询中位数(leetcode569的延伸) Create table If Not Exists Employee (Id int, Company varchar(255), Salary ...
- LeetCode MySQL 1308. 不同性别每日分数总计(累加/变量/窗口函数)
文章目录 1. 题目 2. 解题 1. 题目 表: Scores +---------------+---------+ | Column Name | Type | +--------------- ...
- 台积电全球员工薪酬中位数约46万,CEO约899万;苹果上调日本的 iPhone 售价 ;Vim 9.0 发布|极客头条...
「极客头条」-- 技术人员的新闻圈! CSDN 的读者朋友们早上好哇,「极客头条」来啦,快来看今天都有哪些值得我们技术人关注的重要新闻吧. 整理 | 梦依丹 出品 | CSDN(ID:CSDNnews ...
- Mysql数据库基础第八章:窗口函数和公用表表达式(CTE)
Mysql数据库基础系列 软件下载地址 提取码:7v7u 数据下载地址 提取码:e6p9 mysql数据库基础第一章:(一)数据库基本概念 mysql数据库基础第一章:(二)mysql环境搭建 mys ...
- 台积电全球员工薪酬中位数约46万,CEO约899万;苹果上调日本的 iPhone 售价 ;Vim 9.0 发布|极客头条
「极客头条」-- 技术人员的新闻圈! CSDN 的读者朋友们早上好哇,「极客头条」来啦,快来看今天都有哪些值得我们技术人关注的重要新闻吧. 整理 | 梦依丹 出品 | CSDN(ID:CSDNnews ...
最新文章
- 格“物”致知:多模态预训练再次入门
- 4 C++对C的加强之namespace命名空间
- 发票管理软件_企业为什么需要ERP企业管理软件?
- 技术公开课:SQL Server 高可用性解决方案概述(下)
- [vSphere培训实录]8G内存笔记本搭建vSphere测试环境
- linux g++开启C++11/14支持
- 赶在 2018 年前推荐 30 个最火爆的开源库
- python面试问题_Python面试问题
- Python文件读写基本操作
- 程序员面试题精选100题:51-63解题报告
- 【VRP问题】基于狼群算法WPA求解带时间窗车辆路径规划问题(VRPTW)matlab源码
- 【代码审计】YUNUCMS_v1.0.6 后台代码执行漏洞分析
- 智能营销增益模型(Uplift Modeling)实践整理
- 地理空间分析中的常用python操作
- BH1750 传感器实战教学 —— 硬件设计篇
- jenkins-RestAPI调用出现Error 403 No valid crumb was included in the request解决方法
- 车载、行车记录仪产品知识汇集
- Android 动态申请应用权限
- 【转自Oracle官方博客】一个ASMCA无法识别磁盘设备的问题
- pygame 等有缘人接盘
热门文章
- Python02期(北京)课程笔记索引
- 【Nginx】通过反向代理配置本地图床功能
- centos7安装java6_CentOS7.6安装jdk1.8
- python 递归函数与循环的区别_提升Python效率之使用循环机制代替递归函数
- excel 2007 vba与宏完全剖析_Excel宏VBA小技巧系列 | 分段加合
- uboot移植——DM9000的移植
- leetcood学习笔记-2-两数相加
- Java打war包or打jar包
- 《信息检索导论》第七章总结
- 字符串转换为整数的源码atoi()