MySQL count + накопление для подведения итогов вопроса - PullRequest
0 голосов
/ 25 марта 2011

Моя процедура будет принимать первые 100 строк из таблицы, упорядоченной по рангу desc.

SELECT city FROM table ORDER BY rank DESC LIMIT 0,100

Возвращает:

Seattle,
Portland,
Los Angeles,
Portland,
Eugene,
Eugene,
etc...

Затем я хочу вычислить частоту, с которой каждый городпоявляется в наборе результатов (который должен быть частичным набором 100, упорядоченным по рангу desc, а не всей таблице.)

Что я хочу:

Portland, 2
Eugene, 2
Seattle, 1
Los Angeles, 1

Я не совсемуверен, как написать этот запрос, пожалуйста, помогите.

Большое спасибо!

1 Ответ

2 голосов
/ 25 марта 2011
SELECT city, count(*)
FROM
(
  SELECT city FROM table ORDER BY rank DESC LIMIT 0,100
) as sub
GROUP BY city
ORDER BY COUNT(*) DESC
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...