Как оптимизировать медленный SQL запрос?

Middle
1.5k просмотров
AFK Offer AI

Первый шаг — EXPLAIN ANALYZE, который покажет реальный план выполнения с таймингами. Ищи Seq Scan на больших таблицах — обычно это значит, что нужен индекс. Проверь, что статистика актуальна (ANALYZE), что нет implicit cast в WHERE, что функции не оборачивают индексированные колонки. Если индексы на месте, смотри на Nested Loop с огромными числами строк — возможно, нужен другой тип JOIN. Иногда помогает переписать подзапрос в CTE или наоборот. И не забывай про LIMIT — если фронтенду нужно 20 записей, не тяни миллион.

Следующий вопрос

Что такое CAP теорема?