Встречается на собеседованиях • сегодня
Что такое оптимизация запросов в БД
Оптимизация запросов в БД — это процесс улучшения производительности SQL-запросов для уменьшения времени выполнения и нагрузки на сервер. Основные методы:
- Индексы — ускорение поиска данных (но замедляют вставку/обновление)
python
# Пример создания индекса в SQL
CREATE INDEX idx_user_email ON users(email);- EXPLAIN — анализ плана выполнения запроса
sql
EXPLAIN SELECT * FROM orders WHERE user_id = 100;- Оптимизация JOIN-ов:
- Использование INNER JOIN вместо OUTER, где возможно
- Фильтрация до соединения таблиц
- Ограничение выборки:
- Использование LIMIT
- Выбор только нужных столбцов (не SELECT *)
-
Кэширование частых запросов
-
Нормализация/денормализация таблиц в зависимости от сценариев использования
-
Пакетная обработка вместо множества мелких запросов
Для ORM (например Django):
python
# Плохо: N+1 проблема
users = User.objects.all()
for user in users:
print(user.profile.age) # Отдельный запрос для каждого пользователя
# Хорошо: select_related
users = User.objects.select_related('profile').all()Оптимизация требует баланса между скоростью чтения и затратами на запись/обновление данных.

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