Назад к вопросам
Senior
4
Как работает EXPLAIN и в чём разница между EXPLAIN и EXPLAIN ANALYZE?
Компании, где спрашивали
Ecom.tech
Ответ от нейросети
sobes.tech AI
EXPLAIN — это команда в SQL, которая показывает план выполнения запроса, то есть как СУБД собирается его обработать: какие индексы использовать, в каком порядке читать таблицы, какие операции выполнять. Это помогает понять, почему запрос может работать медленно.
EXPLAIN ANALYZE дополнительно выполняет сам запрос и показывает реальное время выполнения каждого шага плана, а также количество обработанных строк. Таким образом, EXPLAIN даёт теоретический план, а EXPLAIN ANALYZE — фактическую статистику с реальными затратами.
Пример в PostgreSQL:
EXPLAIN SELECT * FROM orders WHERE customer_id = 123;
EXPLAIN ANALYZE SELECT * FROM orders WHERE customer_id = 123;
Первый покажет план, второй — план плюс реальные данные по времени и количеству строк.