Как правильно упорядочить данные по сумме полей из другой таблицы?
У таблицы games
есть counters
(счетчики). Их может быть несколько. у счетчиков есть поле sent:bigint
.
Как отсортировать игры по порядку по кол-во этих отправленных (sent
) счетчиков?
У Компании #1 есть два счетчика. у одного поле sent=3
, у другого sent=2
, т.е. всего отправленных счетчиков 5.
У Компании #2 - 1 счетчик. у него значение sent=4
.
т.е. если сделать порядок по возрастанию, то должно получится так: компания 2, компани 1
Делаю как-то криво, вот так:
SELECT games.*, counters.game_id
FROM games INNER JOIN counters
ON games.id = counters.game_id
GROUP BY counters.sent
ORDER BY sum(counters.sent) asc
Источник: Stack Overflow на русском