![](https://img-blog.csdnimg.cn/20190918140213434.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
Leetcode_SQL
SQL
NLP小姐姐
这个作者很懒,什么都没留下…
展开
-
【Leetcode_SQL】15. 部门工资前三高的员工
难度:困难题目描述:Employee 表包含所有员工信息,每个员工有其对应的工号 Id,姓名 Name,工资 Salary 和部门编号 DepartmentId 。Department 表包含公司所有部门的信息。编写一个 SQL 查询,找出每个部门获得前三高工资的所有员工。例如,根据上述给定的表,查询结果应返回:解释:IT 部门中,Max 获得了最高的工资,Randy 和 Joe 都拿到了第二高的工资,Will 的工资排第三。销售部门(Sales)只有两名员工,Henry 的工资最高,.原创 2020-05-20 22:14:00 · 198 阅读 · 0 评论 -
【Leetcode_SQL】14. 部门工资最高的员工
难度:中等题目描述:Employee 表包含所有员工信息,每个员工有其对应的 Id, salary 和 department Id。Department 表包含公司所有部门的信息。编写一个 SQL 查询,找出每个部门工资最高的员工。例如,根据上述给定的表格,Max 在 IT 部门有最高工资,Henry 在 Sales 部门有最高工资。题解:思路:先在Employee以部门Id分组,查找部门最高的工资;再将两表内连接,查找部门名称,员工姓名,工资,如果部门Id,工资在第1步中查找的.原创 2020-05-20 18:36:37 · 205 阅读 · 0 评论 -
【Leetcode_SQL】13. 连续出现的数字
难度:中等题目描述:编写一个 SQL 查询,查找所有至少连续出现三次的数字。例如,给定上面的 Logs 表, 1 是唯一连续出现至少三次的数字。题解:原创 2020-05-19 21:09:44 · 100 阅读 · 0 评论 -
【Leetcode_SQL】12. 超过5名学生的课
难度:简单题目描述:有一个courses 表 ,有: student (学生) 和 class (课程)。请列出所有超过或等于5名学生的课。例如,表:应该输出:Note:学生在每个课中不应被重复计算。题解:思路:先将courses 表 按课程分组,然后统计学生人数大于等于5的课程。# Write your MySQL query statement belowSelectclassFrom coursesGroup by classHaving count(Di.原创 2020-05-18 22:54:06 · 89 阅读 · 0 评论 -
【Leetcode_SQL】11. 大的国家
难度:简单题目描述:这里有张 World 表如果一个国家的面积超过300万平方公里,或者人口超过2500万,那么这个国家就是大国家。编写一个SQL查询,输出表中所有大国家的名称、人口和面积。例如,根据上表,我们应该输出:题解:# Write your MySQL query statement belowSelect name,population,areafromWorldWherepopulation>25000000 or area>3000000.原创 2020-05-18 22:34:34 · 235 阅读 · 0 评论 -
【Leetcode_SQL】10. 上升的温度
难度:简单问题描述:给定一个 Weather 表,编写一个 SQL 查询,来查找与之前(昨天的)日期相比温度更高的所有日期的 Id。例如,根据上述给定的 Weather 表格,返回如下 Id:题解:# Write your MySQL query statement belowSelectb.IdFrom Weather a,Weather bWhere DATEDIFF(b.RecordDate, a.RecordDate) = 1 And b.Temperatu.原创 2020-05-18 10:54:35 · 94 阅读 · 0 评论 -
【Leetcode_SQL】9.删除重复的电子邮箱
难度:简单题目描述:编写一个 SQL 查询,来删除 Person 表中所有重复的电子邮箱,重复的邮箱里只保留 Id 最小 的那个。例如,在运行你的查询语句之后,上面的 Person 表应返回以下几行:提示:执行 SQL 之后,输出是整个 Person 表。使用 delete 语句。题解:思路:使用内连接查找到重复的、Id较大的电子邮箱,然后使用delete语句删除掉。Delete a.*FROM Person as a Inner Join Person as b.原创 2020-05-18 10:25:30 · 159 阅读 · 0 评论 -
【Leetcode_SQL】8.从不订购的客户
难度:简单题目描述:某网站包含两个表,Customers 表和 Orders 表。编写一个 SQL 查询,找出所有从不订购任何东西的客户。Customers 表:Orders 表:例如给定上述表格,你的查询应返回:题解:方法一:思路:先将两个表左连接,之后返回CustomerId 为空值的Name。# Write your MySQL query statement belowSElECT Name As CustomersFROM Customers Left .原创 2020-05-17 11:34:17 · 88 阅读 · 0 评论 -
【Leetcode_SQL】7.查找重复的电子邮箱
难度:简单题目描述:编写一个 SQL 查询,查找 Person 表中所有重复的电子邮箱。根据以上输入,你的查询应返回以下结果:说明:所有电子邮箱都是小写字母。题解:# Write your MySQL query statement belowselect distinct a.email as Email from person as a inner join person as b on (a.email = b.email and a.id != b.id);知识点:.原创 2020-05-17 10:56:14 · 297 阅读 · 0 评论 -
【Leetcode_SQL】6.超过经理收入的员工
难度:简单题目描述:Employee 表包含所有员工,他们的经理也属于员工。每个员工都有一个 Id,此外还有一列对应员工的经理的 Id。给定 Employee 表,编写一个 SQL 查询,该查询可以获取收入超过他们经理的员工的姓名。在上面的表格中,Joe 是唯一一个收入超过他的经理的员工。题解:方法一:# Write your MySQL query statement belowSELECT a.Name as EmployeeFROM Employee as a, .原创 2020-05-17 10:42:20 · 80 阅读 · 0 评论 -
【Leetcode_SQL】5. 第二高的薪水
难度:简单题目描述:编写一个 SQL 查询,获取 Employee 表中第二高的薪水(Salary) 。例如上述 Employee 表,SQL查询应该返回 200 作为第二高的薪水。如果不存在第二高的薪水,那么查询应返回 null。思路:先对表降序排序,最后查找跳过最高收入,读取第二高的收入。题解:# Write your MySQL query statement belowSelect (Select distinct Salary From Employee order by .原创 2020-05-17 10:03:55 · 96 阅读 · 0 评论 -
【Leetcode_SQL】4.组合两个表
难度:简单题目描述:表1: Person表2: Address编写一个 SQL 查询,满足条件:无论 person 是否有地址信息,都需要基于上述两表提供 person 的以下信息:FirstName, LastName, City, State思路:地址信息(City, State)的查询结果是Null是OK的。但是,姓名(FirstName, LastName)必须有。其次,为啥不用Where?因为where的实质就是根据你给的条件(personID相等),选取两表的公共部分.原创 2020-05-17 09:47:55 · 104 阅读 · 0 评论 -
【LeetCode_SQL】3. 重新格式化部门表
难度:简单题目描述:部门表 Department:(id, month) 是表的联合主键。这个表格有关于每个部门每月收入的信息。月份(month)可以取下列值 ["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]。编写一个 SQL 查询来重新格式化表,使得新的表中有一个部门 id 列和一些对应每个月的收入(revenue)列。查询结果格式如下面的示例所示:查询得到的结果表:题解:# .原创 2020-05-15 19:21:53 · 205 阅读 · 1 评论 -
【Leetcode_SQL】2. 交换工资
题目描述:给定一个 salary 表,如下所示,有 m = 男性 和 f = 女性 的值。交换所有的 f 和 m 值(例如,将所有 f 值更改为 m,反之亦然)。要求只使用一个更新(Update)语句,并且没有中间的临时表。注意,您必只能写一个 Update 语句,请不要编写任何 Select 语句。例如:idnamesexsalary1Am25002Bf15003Cm55004Df500运行你所编写的更新语句之后,将会得到以下原创 2020-05-15 18:52:14 · 92 阅读 · 0 评论 -
【Leetcode_SQL】1.有趣的电影
问题描述:某城市开了一家新的电影院,吸引了很多人过来看电影。该电影院特别注意用户体验,专门有个 LED显示板做电影推荐,上面公布着影评和相关电影描述。作为该电影院的信息部主管,您需要编写一个 SQL查询,找出所有影片描述为非 boring (不无聊) 的并且 id 为奇数 的影片,结果请按等级 rating 排列。试题详解:# Write your MySQL query statement belowselect * from cinema where description != 'bori原创 2020-05-15 18:41:41 · 291 阅读 · 0 评论