我如何 select 具有最多条目的前 5 个结果
How do I select the top 5 results that have the maximum entries
我正在开发一个报告软件。我使用 MySQL 作为其数据库后端。在数据库中有一个名为 "location" 的列。位置列有很多值,我想显示条目数最多的前 5 个位置。
例如。有 500 个条目。其中,德里100人,孟买150人,斋浦尔80人,海得拉巴60人等。现在,我想创建一个 table 的 "Top Locations"。
我试过 "select * from table_name limit 5" 但这是 returns 最后 5 个条目。
有没有我遗漏的方法?
我在 phone 上,很抱歉这么简洁。您可以使用 GROUP BY
来完成此操作。类似于:
SELECT location, COUNT(1) AS ct
FROM table_name
GROUP BY location
ORDER BY ct DESC
LIMIT 5
我正在开发一个报告软件。我使用 MySQL 作为其数据库后端。在数据库中有一个名为 "location" 的列。位置列有很多值,我想显示条目数最多的前 5 个位置。
例如。有 500 个条目。其中,德里100人,孟买150人,斋浦尔80人,海得拉巴60人等。现在,我想创建一个 table 的 "Top Locations"。
我试过 "select * from table_name limit 5" 但这是 returns 最后 5 个条目。
有没有我遗漏的方法?
我在 phone 上,很抱歉这么简洁。您可以使用 GROUP BY
来完成此操作。类似于:
SELECT location, COUNT(1) AS ct
FROM table_name
GROUP BY location
ORDER BY ct DESC
LIMIT 5