【问题标题】:How to use Distinct top in MySQL?如何在 MySQL 中使用 Distinct top?
【发布时间】:2021-02-20 21:20:36
【问题描述】:

我正在努力解决第二高的薪水

Select distinct top 2 salary from employee;

我的代码显示语法错误

错误代码:1064。您的 SQL 语法有错误;检查 与您的 MySQL 服务器版本相对应的手册 在第 1 行使用“员工的 2 薪水”附近的语法

我正在使用 MySQL Workbench。

【问题讨论】:

  • 这不是 MySQL 方言

标签: mysql sql select syntax-error


【解决方案1】:

您可以订购查询并使用limit 子句:

SELECT   DISTINCT salary
FROM     employees
ORDER BY salary DESC
LIMIT    2

【讨论】:

  • 这对数据集做出了具体假设。
  • @Ivan Mureinik 的回答可能对您的要求是合理的。除非 Strawberry 想分享更多细节,说明为什么它在 MySQL 中不合理。
  • 谢谢@Mureinik,我认为 MySQL 允许 TOP 函数,因为我遵循了 Youtube 教程,但你的代码更容易理解。
【解决方案2】:

如果你想要MySQL中的第二高薪,你想要limitoffset

Select distinct salary
from employee
order by salary desc
limit 1 offset 1;

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-09-08
    • 1970-01-01
    • 2021-12-17
    • 2014-01-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多