У меня есть таблица, в которой хранятся данные игровых сессий игроков. Мне нужно посчитать, сколько игроков закончили каждый уровень игры.
Таблица имеет такую структуру`
player_id, player_level, online_time, offline_time, register_time
7461919470860005376, 9, 21/06/19 20:22, 21/06/19 23:55, 20/06/19 18:22
То, что я пытался сделать, это получить максимальный уровень для каждого player_id
Как это
SELECT x1.level, count(*)
FROM
(
SELECT player_id, max(player_level) as level
FROM session_end
GROUP BY player_id
) x1
GROUP BY level
Теперь, зная это, мне нужно каким-то образом добавить игроков с максимальным уровнем == 2 в строку максимального уровня == 1, потому что если игрок закончил уровень 2, это означает, что он закончил уровень 1 ии так далее.
Как я могу это сделать, используя PSQL-синтаксис?