SELECT * FROM (
SELECT
ROW_NUMBER() OVER(ORDER BY SUM(T1.msg_count) DESC) AS number,
T1.tg_id,
SUM(T1.msg_count) AS msg_count,
T2.tg_name
FROM global_data.users_activity T1 JOIN global_data.users T2
ON T2.tg_id = T1.tg_id AND
T1.chat_id = 555 AND T1.msg_date = CURRENT_DATE
GROUP BY T1.tg_id, T2.tg_name
) activity
WHERE number > $2 LIMIT $3;
отличие в производительности в сравнении с просто использованием offset и limit без вложенного подзапроса?
Есть надёжнейший способ получить ответ на этот вопрос: сделать explain analyse обоих вариантов, сравнить планы и время выполнения.
разницы нет, я верно понимаю вывод?
Обсуждают сегодня