mysql按限制排序

时间:2012-04-12 01:52:17

标签: mysql group-by sql-order-by

我有一个查询,我想从表中获取20个最受欢迎的位置,然后按字母顺序排序。我想知道是否有更清洁或更有效的方法来做到这一点?

SELECT
  city
FROM (
  SELECT 
    city, 
    count(*) AS cnt
  FROM locations 
  GROUP BY city
  ORDER BY cnt DESC
  LIMIT 20
) s ORDER BY city;

1 个答案:

答案 0 :(得分:3)

稍微清洁一点:

SELECT city FROM (
  SELECT city FROM locations 
  GROUP BY city
  ORDER BY count(*) DESC
  LIMIT 20
) s ORDER BY city

如果您不打算使用它,则无需检索count(*)

相关问题