Встречается на собеседованиях • сегодня

Почему не следует вешать индексы на все поля

Индексы ускоряют поиск, но замедляют вставку, обновление и удаление данных, так как индексы тоже нужно обновлять. Чем больше индексов, тем больше накладных расходов на поддержание их актуальности.

Пример:

python
# Без индексов - быстрая вставка
cursor.execute("INSERT INTO users (name, email) VALUES (?, ?)", ("Alice", "alice@example.com"))

С индексами на name и email - вставка медленнее

cursor.execute("CREATE INDEX idx_name ON users(name)")
cursor.execute("CREATE INDEX idx_email ON users(email)")

text

**Когда не нужны индексы:**  
- Поля редко используются в WHERE/JOIN/ORDER BY.  
- Таблица небольшая (сканирование быстрее, чем поиск по индексу).  
- Поля часто обновляются.  

Оптимально индексировать только часто запрашиваемые поля.
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы