В EXPLAIN вашего отчёта видно, что выполняется Sort по created_at на очень большом наборе строк. Какое действие чаще всего помогает уменьшить работу сортировки?

AДобавить OFFSET 0 в начало выборки, чтобы планировщик пропустил внутреннюю сортировку и сразу читал страницы
BУбрать условие WHERE из запроса, чтобы планировщик выбрал более эффективный путь и задействовал индекс
CДобавить индекс по полю из ORDER BY created_at или сократить вход в сортировку селективным WHERE
DЗаменить ORDER BY created_at на GROUP BY created_at: группировка делается без шага сортировки строк
Правильный ответ. Сортировка ускоряется, если база может получить строки уже в нужном порядке из индекса.

Разбор

Если план вынужден делать Sort по миллионам строк, это часто главный потребитель ресурсов. Индекс по полю из ORDER BY (или составной индекс под фильтр + порядок) позволяет избежать полной сортировки или существенно её удешевить. Альтернативно можно уменьшить вход в сортировку через более точный WHERE.

Проверь себя · 1/3разбор после ответа
В выводе EXPLAIN вы видите оценку cost=0.00..431.00. Какой вывод аналитик может сделать безопасно?
Тренировать SQL в Telegram

Ещё вопросы по теме «EXPLAIN и оптимизация»