Этот вопрос проверяет понимание различий между командами EXPLAIN и EXPLAIN ANALYZE в SQL.
EXPLAIN показывает предполагаемый план выполнения запроса без фактического выполнения. EXPLAIN ANALYZE выполняет запрос и показывает реальный план с фактическими затратами времени и ресурсов. EXPLAIN быстрый и safe, EXPLAIN ANALYZE точный но может быть slow.
Обе команды используются для анализа производительности SQL-запросов.
EXPLAIN:
Показывает предполагаемый план выполнения, который optimizer выбрал бы.
Не выполняет запрос, поэтому быстрый и не меняет данные.
Полезен для preliminary analysis.
EXPLAIN ANALYZE:
Выполняет запрос и показывает реальный план с measurements (время, строки).
Дает точную информацию но может быть slow на больших запросах.
Полезен для точной диагностики производительности.
Пример в PostgreSQL:
EXPLAIN SELECT * FROM users WHERE age > 30;Показывает предполагаемый план.
EXPLAIN ANALYZE SELECT * FROM users WHERE age > 30;Выполняет запрос и показывает реальные затраты.