Back to questions
Ozon Финтех
Middle+
4
Что такое EXPLAIN и EXPLAIN ANALYZE в PostgreSQL, в чём разница?
Companies where asked
Answer from AI
sobes.tech AI
В PostgreSQL команда EXPLAIN используется для отображения плана выполнения SQL-запроса, то есть как СУБД собирается его выполнить. Она показывает, какие операции будут выполнены (например, последовательное сканирование, индексное сканирование, соединения), в каком порядке и с какими оценками затрат.
EXPLAIN ANALYZE дополнительно выполняет сам запрос и показывает фактическое время выполнения каждой операции и количество обработанных строк. Это позволяет сравнить план с реальным выполнением и выявить узкие места.
Основные отличия:
EXPLAINпоказывает только предполагаемый план и оценки, без выполнения запроса.EXPLAIN ANALYZEвыполняет запрос и показывает реальные метрики, что полезно для точного анализа производительности.
Пример:
EXPLAIN SELECT * FROM users WHERE id = 10;
EXPLAIN ANALYZE SELECT * FROM users WHERE id = 10;