В выводе EXPLAIN вы видите узел Seq Scan on orders. Что это обычно означает?

AБаза использует индекс и читает только подходящие строки.
BБаза возвращает результат из кэша и не читает таблицу.
CБаза читает таблицу orders целиком и затем применяет Filter (условия WHERE).
DБаза блокирует таблицу orders до конца запроса.
Правильный ответ. Seq Scan — последовательное чтение таблицы целиком.

Разбор

При Seq Scan планировщик ожидает, что проще пройтись по всем строкам, чем прыгать по индексу. Это может быть нормальным для маленьких таблиц или когда условие WHERE отбирает большую долю данных. Узкое место возникает, когда таблица большая, а фильтр должен был сильно сузить выборку.

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

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