Вы хотите добавить новый запрос в дашборд и боитесь, что он сильно нагрузит базу, потому что таблица events очень большая. Что даёт запуск EXPLAIN для этого запроса?

AОн выполнит запрос полностью и вернёт точное время выполнения в миллисекундах, как делает EXPLAIN ANALYZE на тестовой среде разработки
BОн покажет предполагаемый план выполнения, например Seq Scan или Index Scan, без фактического выполнения запроса на больших данных
CОн автоматически создаст подходящие индексы под ваш запрос, чтобы ускорить выборку строк из большой таблицы и снять часть нагрузки
DОн временно заблокирует таблицу events от записи, чтобы получить стабильный и воспроизводимый результат измерений на проде
Правильный ответ. EXPLAIN показывает план выполнения и помогает оценить риск тяжёлого запроса без его запуска.

Разбор

В Postgres-подобных СУБД EXPLAIN отображает выбранные шаги плана — например, Seq Scan, Index Scan, Sort, операции для JOIN — и их оценки. Это полезно, чтобы увидеть потенциальные узкие места до запуска запроса в проде. В отличие от EXPLAIN ANALYZE, обычный EXPLAIN не выполняет запрос.

Проверь себя · 1/3разбор после ответа
Есть индекс по orders.created_at, но EXPLAIN для фильтра WHERE date(created_at) = current_date показывает Seq Scan. Почему это часто происходит?
Тренировать SQL в Telegram

Ещё вопросы по теме «EXPLAIN и оптимизация»