第二高薪水

2023-12-25

编写一个 SQL 查询从 Employee 表中获取第二高的工资。

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

例如,对于上面的 Employee 表,查询应返回 200 作为第二高薪水。如果没有第二高的薪水,则查询应返回 null。

    | SecondHighestSalary |
    | 200                 |

这是Leetcode的一道题,我输入了以下代码:

    SELECT CASE WHEN Salary = '' 
                THEN NULL
    ELSE Salary 
    END AS SecondHighestSalary 
    FROM (SELECT TOP 2 Salary
                ,ROW_NUMBER() OVER (ORDER BY Salary DESC) AS Num
          FROM Employee
          ORDER BY Salary DESC) AS T
    WHERE T.Num = 2

它表示如果没有第二高薪水的值,则查询不会返回 NULL。 例如。如果表是

   | Id | Salary| 
   | 1  |  100  |

查询应该返回

   |SecondHighestSalary|
   |       null        |

and not

   |SecondHighestSalary|
   |                   |

如果出现平局,您需要第二高的不同值。例如。对于值 100、200、300、300,您需要 200。

因此获得最高值(MAX(salary)=> 300),然后获取小于该值的最高值:

select max(salary) from mytable where salary < (select max(salary) from mytable);
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

第二高薪水 的相关文章

随机推荐

  • O(M+N) 是什么意思?

    这是一个基本问题 但我认为 O M N 与 O max M N 相同 因为当我们趋向无穷大时 较大的项应该占主导地位 另外 这与 O min M N 不同 对吗 我一直看到这个符号 尤其是 在讨论图算法时 例如 您经常会看到 O V E 例
  • 为什么 Java 中的大多数字符串操作都基于正则表达式?

    在 Java 中 有很多方法都与操作字符串有关 最简单的例子是 String split something 方法 现在 许多这些方法的实际定义是它们都采用正则表达式作为输入参数 这使得所有的构建块都非常强大 现在 您将在其中许多方法中看到
  • Redux 与 Context API 和 useReducer 钩子

    过去 6 个月我一直在 React 中工作 但还没有任何 Redux 经验 虽然我使用过 context api 和 useReducer hook 我需要将现有应用程序转换为 React 该应用程序将包含大约 100 120 个组件 我的
  • Bootstrap 3 中的加载状态按钮

    我是 Bootstrap 3 的新手 不知道如何激活加载状态按钮功能 我下面的代码来自文档getboostrap com http getbootstrap com
  • 使用单步旋转时如何实现平滑的动画/如何在旋转开始时获取新的帧大小?

    我正在尝试从两级旋转切换为一级旋转 以避免控制台警告 并且因为苹果建议这样做 因为一级旋转速度更快 但是 我不知道如何尽早获取视图的新大小 考虑到导航栏 状态栏等 以便在动画期间执行 UI 更新 而不是简单地将项目捕捉到它们的位置 就像许多
  • 延迟加载样板模块

    在boilerplatejs中 模块似乎是预先加载的 参考下面的代码 return require baseModule module require sampleModule2 module require customerModule
  • 为节点分配多个属性

    我想为我的节点分配一个属性 目前我正在使用以下数据示例创建一个网络 Attribute Source Target Weight Label 87 5 Heisenberg Pauli 66 3 1 12 5 Beckham Messi 3
  • 如何在C++中从Windows注册表获取计算机制造商和型号?

    我正在编写自己的 C 代码 通过读取和解析注册表项来读取 Windows 计算机上的计算机型号和制造商 HKEY LOCAL MACHINE SYSTEM CurrentControlSet services mssmbios Data S
  • 配置 Docker 守护进程端口以启用 Docker API

    我试图配置Docker 守护进程端口如中提到的a link https docs docker com engine admin configure the docker daemon cat etc docker daemon json
  • python dropbox api错误

    我正在按照教程进行操作here https www dropbox com developers start files python 到目前为止一切顺利 但上传示例给了我错误 代码 from dropbox import client r
  • 如何在 Windows Phone 上执行 CreateBindingSet()?

    在N 1视频 34 Progress 中 有一个针对Android版本使用CreateBindingSet 的示例 这并不典型 但解说员也简单提到 在Windows平台上也可以做同样的事情 然而 尽我所能 我无法将视图的属性绑定到 Wind
  • app.config 连接字符串的文件转换任务

    我正在设置一个发布管道任务来使用变量替换多个连接字符串值来转换我的 app config 这些属性不在节点中 而是在单独的节点中 文件转换任务是否仅适用于节点或文件中任何位置的设置 连接字符串属性上的属性是名称和 connectionStr
  • 函数调用栈:train_function

    我在训练使用 keras 创建的功能模型时遇到以下错误 File D Age prediction testmatrixshape py line 34 in
  • python 乌龟中的逻辑错误

    我正在用 python 3 2 海龟编码 我有一张漂亮的坦克图 我知道如何向左移动并书写 然而 当试图使坦克上下移动时 我面临的问题是它会上升 但如果我松开并再次按下向上按钮 它转向左侧 可能很难解释 所以我包含了代码 Programmer
  • Xpath substring-before 只获取一个元素

  • 如何重新抛出异常并保留堆栈跟踪?

    这段代码 try try throw 1 catch e s print e s throw e catch e2 s2 print e2 s2 prints 1 0 main file test dart 34 7 1 0 main fi
  • RVM Requiremets 尝试利用已弃用的自制软件/版本

    我正在尝试让 Ruby on Rails 项目在我的 Mac OS Sierra 10 13 3 计算机上运行 当我导航到 Rails 文件夹时 RVM 告诉我以下信息 Required ruby 1 9 3 p392 is not ins
  • CSS:在列表项中显示彼此相邻的图像和div

    当我今天早上出发时 任务似乎很简单 建立一个元素列表 每个元素由缩略图 标题和副标题组成 我想让图像与其旁边的标题和副标题对齐 如果您查看 YouTube 视频页面 相关视频 框具有类似的布局 UPDATE 更具体地说 我正在尝试生成两列布
  • matplotlib:从图中删除补丁

    我在用matplotlib to interactively绘制一些patches and points 我通过队列从单独的进程接收数据并将它们发送到我的绘图进程 这部分代码工作正常 点显示在图表上 并按预期在图中不断更新 根据用户的要求
  • 第二高薪水

    编写一个 SQL 查询从 Employee 表中获取第二高的工资 Id Salary 1 100 2 200 3 300 例如 对于上面的 Employee 表 查询应返回 200 作为第二高薪水 如果没有第二高的薪水 则查询应返回 nul