mysql - 如何使用 SQL 打印数据库列中的前 2 个最大值?

标签 mysql sql sql-server

如何使用 SQL 打印数据库表中属性(列)下的前两个最大值?

我有一个名为 salary 的列,其中包含不同的行(大约 10 行)。我们需要打印出前两个最大值。

我知道我们可以使用max函数得到第一个最大值,但是如果我需要前两个值怎么办?

最佳答案

也许是这样的? (mysql)

select `salary` from `mytable` order by `salary` desc limit 2

根据 Alex 的回答,您可以添加 distinct 关键字以确保获得两个不同的值。

select distinct `salary` from `mytable` order by `salary` desc limit 2

关于mysql - 如何使用 SQL 打印数据库列中的前 2 个最大值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12155261/

相关文章:

c# - 操作数数据类型时间对于添加运算符无效

sql-server - 从 SQL Server 2008 Express 升级到 2008 Developer

php - 查询后在 WordPress 中重定向?

mysql - 如何从 Microsoft Excel 工作表插入/更新数据到 Mysql 数据库?

mysql - 获取连接 2 个表的行数

mysql - 使用时间戳条件删除一张表中MySQL中的行

sql - 如何使用安装程序/更新脚本和 Magento 抽象更新 Magento 产品的值?

mysql - 子查询中的字段基于行的年龄而不是 "group by"

Mysql 帮助更新具有相同值的行

sql-server - 如何在 codeigniter 中使用 SQL Server 2012 作为我的数据库