我有一个 city 表,其中包含 ID
、Name
、CountryCode
和 等字段人口
。我想找到 Population
最多的前 N(比如 N = 5)个城市。
一种非常幼稚的方法是使用 MAX()
组函数找到人口最多的城市,然后通过此处提到的方法的变体找到其余城市。
What is the simplest SQL Query to find the second largest value?
有人知道实现目标的更好方法吗?
最佳答案
如果您只想要前 N 个城市,使用 order by
和 limit
将是一种更简单的方法:
SELECT *
FROM city
ORDER BY population DESC
LIMIT 5 -- or any other N
关于mysql - 在一列中查找 N 个最大的元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35378278/