[知识总结] 【leetcode】SQL编程题题解
作者:精品下载站 日期:2021-11-18 10:02:00 浏览:93 分类:编程开发
本文将记录力扣SQL下的题目:
除了较多的连接题目以外,有很多的排序题目,需要用到窗口函数
175.组合两个表
很基本的两表关联
SELECT
p.FirstName AS firstName, p.LastName as lastName, a.City AS city, a.State AS state
FROM Person p
LEFT JOIN Address a
ON p.PersonId = a.PersonId
176.第二高的薪水
考查LIMIT的使用,同时考虑记录只有一条的情况
SELECT
(SELECT DISTINCT
Salary
FROM
Employee
ORDER BY Salary DESC
LIMIT 1,1) AS SecondHighestSalary
177.第N高的薪水
这道题给了一个mysql的脚本
CREATE FUNCTION getNthHighestSalary(N INT) RETURNS INT
BEGIN
SET N:=N-1;
RETURN (
# Write your MySQL query statement below.
SELECT DISTINCT
Salary
FROM
Employee
ORDER BY Salary DESC
LIMIT N,1
);
END
178. 分数排名
这道题使用窗口函数会很方便
row_number()
在排名是序号连续、不重复,即使遇到表中的两个一样的数值亦是如此rank()
函数会把要求排序的值相同的归为一组且每组序号一样(序号可能会间断)dense_rank()
排序是连续的,也会把相同的值分为一组且每组排序号一样ntile(group_num)
将所有记录分成group_num个组,每组序号一样
select Score, dense_rank() over(order by Score desc) 'Rank' from Scores
179.连续出现的数字
数字连续出现三次以上,将同一张表自关联三次
SELECT DISTINCT l1.Num AS ConsecutiveNums
FROM
Logs l1,Logs l2,Logs l3
WHERE
l1.Id = l2.Id - 1
AND
l2.Id = l3.Id - 1
AND
l1.Num = l2.Num
AND
l2.Num = l3.Num
181.超过经理收入的员工
自关联作比较
SELECT
a.NAME AS Employee
FROM Employee AS a JOIN Employee AS b
ON a.ManagerId = b.Id
AND a.Salary > b.Salary
182.查找重复的电子邮箱
分组之后根据count判断
SELECT Email
FROM Person
GROUP BY Email
HAVING count(Email) > 1
183.从不订购的客户
使用NOT IN
SELECT Name Customers FROM Customers WHERE Id NOT IN (SELECT CustomerId FROM Orders)
184.部门工资最高的员工
关键在于WHERE之后的限定,使用两个字段IN一个子查询(ID和最大薪资)
SELECT
Department.name AS 'Department',
Employee.name AS 'Employee',
Salary
FROM
Employee
JOIN
Department ON Employee.DepartmentId = Department.Id
WHERE
(Employee.DepartmentId, Employee.Salary) IN
(SELECT DepartmentId, MAX(Salary)
FROM Employee
GROUP BY DepartmentId)
猜你还喜欢
- 03-29 [编程相关] Winform窗体圆角以及描边完美解决方案
- 03-29 [前端问题] has been blocked by CORS policy跨域问题解决
- 03-29 [编程相关] GitHub Actions 入门教程
- 03-29 [编程探讨] CSS Grid 网格布局教程
- 10-12 [编程相关] python实现文件夹所有文件编码从GBK转为UTF8
- 10-11 [编程算法] opencv之霍夫变换:圆
- 10-11 [编程算法] OpenCV Camshift算法+目标跟踪源码
- 10-11 [Python] python 创建 Telnet 客户端
- 10-11 [编程相关] Python 基于 Yolov8 + CPU 实现物体检测
- 03-15 [脚本工具] 使用go语言开发自动化脚本 - 一键定场、抢购、预约、捡漏
- 01-08 [编程技术] 秒杀面试官系列 - Redis zset底层是怎么实现的
- 01-05 [编程技术] 《Redis设计与实现》pdf
取消回复欢迎 你 发表评论:
- 精品推荐!
-
- 最新文章
- 热门文章
- 热评文章
[短剧] 2025年06月03日 精选+付费短剧推荐25部
[软件合集] 25年6月3日 精选软件44个
[短剧合集] 2025年06月2日 精选+付费短剧推荐39部
[软件合集] 25年6月2日 精选软件18个
[软件合集] 25年6月1日 精选软件15个
[短剧合集] 2025年06月1日 精选+付费短剧推荐59部
[短剧] 2025年05月31日 精选+付费短剧推荐58部
[软件合集] 25年5月31日 精选软件66个
[电影] 黄沙漫天(2025) 4K.EDRMAX.杜比全景声 / 4K杜比视界/杜比全景声
[风口福利] 短视频红利新风口!炬焰创作者平台重磅激励来袭
[剧集] [央视][笑傲江湖][2001][DVD-RMVB][高清][40集全]李亚鹏、许晴、苗乙乙
[电视剧] 欢乐颂.5部全 (2016-2024)
[电视剧] [突围] [45集全] [WEB-MP4/每集1.5GB] [国语/内嵌中文字幕] [4K-2160P] [无水印]
[影视] 【稀有资源】香港老片 艺坛照妖镜之96应召名册 (1996)
[剧集] 神经风云(2023)(完结).4K
[剧集] [BT] [TVB] [黑夜彩虹(2003)] [全21集] [粤语中字] [TV-RMVB]
[资源] B站充电视频合集,包含多位重量级up主,全是大佬真金白银买来的~【99GB】
[影视] 内地绝版高清录像带 [mpg]
[书籍] 古今奇书禁书三教九流资料大合集 猎奇必备珍藏资源PDF版 1.14G
[美图] 2W美女个美女小姐姐,饱眼福
[电视剧] [突围] [45集全] [WEB-MP4/每集1.5GB] [国语/内嵌中文字幕] [4K-2160P] [无水印]
[剧集] [央视][笑傲江湖][2001][DVD-RMVB][高清][40集全]李亚鹏、许晴、苗乙乙
[电影] 美国队长4 4K原盘REMUX 杜比视界 内封简繁英双语字幕 49G
[电影] 死神来了(1-6)大合集!
[软件合集] 25年05月13日 精选软件16个
[精品软件] 25年05月15日 精选软件18个
[绝版资源] 南与北 第1-2季 合集 North and South (1985) /美国/豆瓣: 8.8[1080P][中文字幕]
[软件] 25年05月14日 精选软件57个
[短剧] 2025年05月14日 精选+付费短剧推荐39部
[短剧] 2025年05月15日 精选+付费短剧推荐36部
- 最新评论
-
- 热门tag