Встречается на 2% собеседований по Python
Как оптимизировать запросы к БД
Оптимизация 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
интервью вопросы и ответы