美文网首页鲸落消零派
刷题笔记(Mysql)

刷题笔记(Mysql)

作者: 众神开挂 | 来源:发表于2020-04-23 21:35 被阅读0次

175. 组合两个表

表1: Person
+-------------+---------+
| 列名 | 类型 |
+-------------+---------+
| PersonId | int |
| FirstName | varchar |
| LastName | varchar |
+-------------+---------+

表2: Address
+--------------+---------+
| 列名 | 类型 |
+--------------+---------+
| AddressId | int |
| PersonId | int |
| City | varchar |
| State | varchar |
+-------------+---------+

编写一个 SQL 查询,满足条件:无论 person 是否有地址信息,都需要基于上述两表提供 person 的以下信息:FirstName, LastName, City, State

select A.FirstName, A.LastName, B.City, B.State
from Person A
left join (select distinct PersonId, City, State from Address) B
on A.PersonId=B.PersonId;

176. 第二高的薪水

编写一个 SQL 查询,获取 Employee 表中第二高的薪水(Salary) 。

+----+--------+
| Id | Salary |
+----+--------+
| 1 | 100 |
| 2 | 200 |
| 3 | 300 |
+----+--------+

select IFNULL((select distinct(Salary) from Employee order by Salary desc limit 1,1),null) 
as SecondHighestSalary

177. 第N高的薪水

编写一个 SQL 查询,获取 Employee 表中第 n 高的薪水(Salary)。

+----+--------+
| Id | Salary |
+----+--------+
| 1 | 100 |
| 2 | 200 |
| 3 | 300 |
+----+--------+
例如上述 Employee 表,n = 2 时,应返回第二高的薪水 200。如果不存在第 n 高的薪水,那么查询应返回 null。

+------------------------+
| getNthHighestSalary(2) |
+------------------------+
| 200 |
+------------------------+

CREATE FUNCTION getNthHighestSalary(N INT) RETURNS INT
BEGIN
  DECLARE c INT default if(N>0,N-1,1);
  RETURN (
      # Write your MySQL query statement below.
      select Salary from Employee group by Salary order by Salary desc limit c,1
  );
END

相关文章

  • 刷题笔记(Mysql)

    175. 组合两个表 表1: Person+-------------+---------+| 列名 ...

  • 晨间日记

    计算机刷题 看书写笔记 高数刷题 英语刷题 奋斗到天亮,加油奥利给

  • LeetCode MySQL刷题

    1. 重复数据类型 1.1 查询重复数据 解题思路: 通过百度查询到一下语句 于是将语句修改成 结果出现两个相同记...

  • 谷歌工程师为金三银四筹备1000道Leetcode刷题笔记

    对于刷题相关的文章,在之前我也推荐过不少,今天再给大家推荐一份算法刷题笔记,这份笔记与以往的刷题有所区别,作者把 ...

  • 刷题笔记

    算法思想 一、二分查找 1. 算法思想 算法详解 算法细节 一定要看二分查找细节.md 实现时需要注意以下细节: ...

  • 刷题笔记

    最近在准备面试,发现自己真的菜的不行,就计划接下来的时间把 leetcode 上面刷的 中等题 和 每日一题做个简...

  • 刷题笔记

    题目描述 343 - Integer BreakGiven a positive integer n, break...

  • 刷题日记 | Oracle & MySQL

    ©一颗斯特拉【注】1.标有❤️的是值得多做的题2.参考书:①Oracle讲稿 BY帅气的朱老师②菜鸟驿站-MySQ...

  • 抓住小尾巴

    最近忙着刷题,感觉效率不是很高,白天看录播视频做笔记,晚上刷题。参加了一个集训营,只要每天刷完固定的题量,达到了七...

  • 字节总监首发1121道LeetCode算法刷题笔记(含答案)

    关于算法刷题的困惑和疑问也经常听朋友们提及。这份笔记里面共包含作者刷LeetCode算法题后整理的数百道题,每道题...

网友评论

    本文标题:刷题笔记(Mysql)

    本文链接:https://www.haomeiwen.com/subject/mbkoshtx.html