Junior — Middle
106
Jaký je rozdíl mezi příkazy EXPLAIN a EXPLAIN ANALYZE v PostgreSQL v kontextu analýzy dotazů?
Společnosti byly požádány
КубикТех
Odpověď od AI
sobes.tech AI
Команда EXPLAIN в PostgreSQL показывает план выполнения SQL-запроса, то есть как СУБД собирается его выполнить: какие индексы использовать, порядок операций, оценки затрат и количества строк. Это статический анализ без фактического выполнения запроса.
Команда EXPLAIN ANALYZE не только выводит план, но и выполняет запрос, собирая реальные статистические данные: сколько времени заняла каждая операция, сколько строк было обработано. Это помогает понять, насколько план соответствует реальному выполнению и выявить узкие места.
Пример:
EXPLAIN SELECT * FROM users WHERE id = 1;
EXPLAIN ANALYZE SELECT * FROM users WHERE id = 1;
Первый покажет план, второй — план плюс реальные затраты и время выполнения.