Sobes.tech
Junior — Middle
97

PostgreSQL-də sorğu analizində EXPLAIN və EXPLAIN ANALYZE komandları arasındakı fərq nədir?

Şirkətlər soruşuldu
КубикТех
AstonAston

AI-dan cavab

sobes.tech Süni İntellekt

Команда EXPLAIN в PostgreSQL показывает план выполнения SQL-запроса, то есть как СУБД собирается его выполнить: какие индексы использовать, порядок операций, оценки затрат и количества строк. Это статический анализ без фактического выполнения запроса.

Команда EXPLAIN ANALYZE не только выводит план, но и выполняет запрос, собирая реальные статистические данные: сколько времени заняла каждая операция, сколько строк было обработано. Это помогает понять, насколько план соответствует реальному выполнению и выявить узкие места.

Пример:

EXPLAIN SELECT * FROM users WHERE id = 1;
EXPLAIN ANALYZE SELECT * FROM users WHERE id = 1;

Первый покажет план, второй — план плюс реальные затраты и время выполнения.