Что делает EXPLAIN в БД

Python Senior Без компании
Что делает EXPLAIN в БД
Ответы
`EXPLAIN` — это команда в SQL, которая показывает план выполнения запроса, помогая оптимизировать его. Она выводит информацию о том, как СУБД будет обрабатывать запрос: какие индексы используются, порядок соединения таблиц, оценка стоимости операций и т. д. **Пример в PostgreSQL:** ``` EXPLAIN SELECT * FROM users WHERE age > 30; ``` Вывод может включать: - **Seq Scan** (последовательное сканирование) — если нет индекса. - **Index Scan** — если используется индекс. - **Join Type** — метод соединения таблиц (Nested Loop, Hash Join и т. д.). **Оптимизация:** Если `EXPLAIN` показывает `Seq Scan` на большом таблице, стоит добавить индекс: ``` CREATE INDEX idx_users_age ON users(age); ``` Для детального анализа можно использовать `EXPLAIN ANALYZE`, который выполняет запрос и показывает реальное время выполнения.