Встречается на собеседованиях • сегодня
Как оптимизировать запросы к БД
Оптимизация SQL-запросов в Python включает несколько ключевых подходов:
- Используй индексы – убедись, что запросы используют индексы для ускорения поиска.
- Ограничивай выборку – забирай только нужные поля (
SELECT column1, column2вместоSELECT *). - Пейджинг – применяй
LIMITиOFFSETдля больших таблиц. - Кеширование – используй
django-cacheилиredisдля часто запрашиваемых данных. - Оптимизация JOIN – избегай лишних соединений и проверяй их порядок.
Пример с SQLAlchemy:
python
# Плохо (выбирает все поля)
users = session.query(User).all()
# Лучше (только нужные поля + лимит)
users = session.query(User.id, User.name).limit(100).all()Django ORM:
python
# Оптимизированный запрос с select_related (для ForeignKey)
orders = Order.objects.select_related('customer').filter(status='completed')[:50]Дополнительно: анализируй медленные запросы через EXPLAIN (PostgreSQL) или django-debug-toolbar.

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