Leetcode 176. Second Highest Salary

原创 2016年08月30日 02:08:27

176. Second Highest Salary

Total Accepted: 22494 Total Submissions: 100791 Difficulty: Easy

Write a SQL query to get the second highest salary from the Employee table.

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

For example, given the above Employee table, the second highest salary is 200. If there is no second highest salary, then the query should return null.

思路:

这个题弄了半天没有出来,本来想着先排序然后取第二个,结果要求是null if没有第二个数。注意:一行是输出null;全部都是重复的一个value一样是输出null。

方法就是先取出salary这列,然后降序排序,然后用limit函数取出第二行,最后改该列名称为SecondHighestSalary。

# Write your MySQL query statement below
select (select distinct Salary from Employee order by Salary desc limit 1,1) as SecondHighestSalary;

在我们使用查询语句的时候,经常要返回前几条或者中间某几行数据,这个时候怎么办呢?不用担心,mysql已经为我们提供了这样一个功能。
SELECT * FROM table  LIMIT [offset,] rows | rows OFFSET offset

LIMIT 子句可以被用于强制 SELECT 语句返回指定的记录数。LIMIT 接受一个或两个数字参数。参数必须是一个整数常量。如果给定两个参数,第一个参数指定第一个返回记录行的偏移量,第二个参数指定返回记录行的最大数目。初始记录行的偏移量是 0(而不是 1): 为了与 PostgreSQL 兼容,MySQL 也支持句法: LIMIT # OFFSET #。 

mysql> SELECT * FROM table LIMIT 5,10;  // 检索记录行 6-15

//为了检索从某一个偏移量到记录集的结束所有的记录行,可以指定第二个参数为 -1: 
mysql> SELECT * FROM table LIMIT 95,-1; // 检索记录行 96-last.

//如果只给定一个参数,它表示返回最大的记录行数目: 
mysql> SELECT * FROM table LIMIT 5;     //检索前 5 个记录行

//换句话说,LIMIT n 等价于 LIMIT 0,n。

版权声明:本文为博主原创文章,未经博主允许不得转载。

处理机调度(笔记四)

0.处理机调度的层次 高级调度(High Level Scheduling):又称长程调度或作业调度,它的调度对象是作业。决定将外存上处于后备队列中的哪几个作业调入内存。高级调度主要用于多道批处理系...
  • qq_35178267
  • qq_35178267
  • 2017年11月22日 13:30
  • 93

二叉树的遍历(先序/中序/后序,递归/迭代)与搜索

遍历一个数据结构,也即逐一地处理(可读可写)其中所有元素。 1. 深度优先按深度优先的方式遍历一棵二叉树,需要做三件事(可能需要处理其中的数据): 遍历左子树(L); 遍历根节点(D); 遍历右子树(...
  • lanchunhui
  • lanchunhui
  • 2016年08月22日 00:01
  • 271

Jmeter 相关元祖参数

1、线程组 每个测试计划至少需要包含一个线程组,在测试计划下面多个线程是并行执行的,也就是说这些线程组是同时被初始化并同时执行线程组下的Sampler的。 属性详解: 线程数:虚拟用户数。一个虚拟...
  • fanxiyanhong
  • fanxiyanhong
  • 2016年05月16日 11:06
  • 437

SQLite(4) SELECT 基本组合用法大全

1 Where 条件筛选 2 ANDOR NOTBETWEEN交并集 3 Update 更新 4 Delete 删除 5 Like 模糊匹配 6 Glob 匹配指定模式 7 Limit 条...
  • kuangdacaikuang
  • kuangdacaikuang
  • 2017年12月12日 23:09
  • 61

【LeetCode-面试算法经典-Java实现】【所有题目目录索引】

【博文总目录>>>】 LeetCode算法题典   LeetCode是一个准备面试非常有用的网站,是非常值得去的地方,里面都是一些经典的面试题,这些题目在Google,Microsof...
  • DERRANTCM
  • DERRANTCM
  • 2015年07月16日 06:27
  • 24395

C++ 之函数模版

函数模版定义: 函数模版是通用的函数描述,有时候也被称为参数化类型。 建立模版如下: template void Swap (Any&a,Any&b){     Any temp;     temp...
  • ztk881012
  • ztk881012
  • 2014年01月27日 10:03
  • 785

LeetCode 问题汇总(算法,难度,频率)

Id Question Difficulty Frequency Data Structures Algorithms 1 T...
  • sbitswc
  • sbitswc
  • 2014年03月13日 11:58
  • 12069

[LeetCode刷题笔记] 关于LeetCode的前言

又到了一年毕业就业季了,三年前的校招季我逃避了,可这一次终于还是要轮到我了=_=||。 作为要准备踏入码农行业的人来说,要准备校招,怎么能不去刷刷LeetCode呢? LeetCode收录了许多互联网...
  • tostq
  • tostq
  • 2016年07月22日 21:32
  • 2964

集合的操作(员工类 第二篇)

/**  * 要求用户输入若干员工信息,格式为:  * name,age,gender,salary,hiredate;name,age,gender,salary,hiredate;....  * ...
  • wangqing84411433
  • wangqing84411433
  • 2016年12月16日 11:33
  • 195

uc-/os-ii的中断和时钟

1.中断管理和中断服务程序的结构   3.1.1中断响应过程 UC/OS-II系统响应中断的过程是:系统接收到中断请求时,如果这时CPU处于中断允许状态,即中断时开放的,系统就会终止正在运行的当前...
  • ryan_jianjian
  • ryan_jianjian
  • 2016年09月11日 22:15
  • 172
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Leetcode 176. Second Highest Salary
举报原因:
原因补充:

(最多只允许输入30个字)