Ответ
Индекс ускоряет поиск и сортировку данных, так как позволяет БД быстро находить строки без полного сканирования таблицы (full scan). Он работает как оглавление в книге — указывает на нужные страницы.
Пример:
-- Создание индекса
CREATE INDEX idx_user_email ON users(email);
-- Запрос с использованием индекса
SELECT * FROM users WHERE email = 'test@example.com';
Нюансы:
- Ускоряет
SELECT, но замедляетINSERT,UPDATE,DELETE(индекс нужно обновлять). - Занимает дополнительное место.
- Эффективен для часто фильтруемых полей (
WHERE,JOIN,ORDER BY). - Избыточные индексы ухудшают производительность.