Встречается на собеседованиях • сегодня
Как понять что нужно использовать индекс в БД
Индексы в БД ускоряют поиск, но замедляют вставку и обновление. Их стоит добавлять, если:
- Часто выполняются запросы с
WHERE,JOINилиORDER BYпо определенным полям. - Таблица большая, а выборки возвращают мало строк (высокая селективность).
- Поле используется в условиях уникальности (
UNIQUE,PRIMARY KEY).
Пример с SQLite:
python
import sqlite3
conn = sqlite3.connect('test.db')
cursor = conn.cursor()
# Создаем таблицу без индекса
cursor.execute("CREATE TABLE users (id INTEGER, name TEXT, email TEXT)")
# Добавляем индекс для ускорения поиска по email
cursor.execute("CREATE INDEX idx_email ON users(email)")
# Теперь поиск по email будет быстрее
cursor.execute("SELECT * FROM users WHERE email = ?", ('test@example.com',))Не стоит индексировать:
- Маленькие таблицы
- Столбцы с низкой селективностью (например, булевы значения)
- Столбцы, которые часто обновляются

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы