Есть ли способ ограничить результат ПОСЛЕ группировки? - PullRequest
0 голосов
/ 12 июля 2011

Я пытаюсь сгруппировать несколько сообщений по часам, поэтому в час показывается только 1 сообщение, но я думаю, что происходит то, что mysql ограничивает результаты, а затем группирует их, и это приводит к тому, что сообщения появляются менее чем за час.

Есть ли способ применить лимит после группировки как имеющийся?

Пример:

SELECT * FROM posts 
GROUP BY posts.userid, FLOOR((UNIX_TIMESTAMP()- UNIX_TIMESTAMP(posts .time))/3600) #Hourly limiter
LIMIT 20

Я хочу, чтобы этот запрос выполнял группировку до ограничения, чтобы я могполучить точные результаты.

1 Ответ

5 голосов
/ 12 июля 2011

Обычно для фильтрации групп используется предложение HAVING, поскольку предложение HAVING оценивается по результатам GROUP BY. См. http://www.electrictoolbox.com/mysql-group-by-having/ для примеров.

...