Встречается на собеседованиях • сегодня
Как оптимизировать сложные запрос в БД
Для оптимизации тяжелых SQL-запросов в Python:
- Индексы - убедитесь, что запрос использует индексы по условиям WHERE и JOIN
python
# Создание индекса
cursor.execute("CREATE INDEX idx_name ON users(name)")- Лимиты и пагинация - не загружайте все данные сразу
python
# Пагинация
cursor.execute("SELECT * FROM large_table LIMIT 100 OFFSET 200")- Оптимизация SELECT - выбирайте только нужные поля
python
# Вместо SELECT *
cursor.execute("SELECT id, name FROM users WHERE active = 1")-
Кэширование - используйте Redis/Memcached для часто запрашиваемых данных
-
EXPLAIN - анализируйте план выполнения запроса
python
cursor.execute("EXPLAIN ANALYZE SELECT * FROM users")
print(cursor.fetchall())- Батчинг - для массовых операций используйте batch-вставки
python
data = [(1, 'John'), (2, 'Alice')]
cursor.executemany("INSERT INTO users VALUES (?, ?)", data)- ORM оптимизация - для Django/SQLAlchemy используйте:
- select_related/prefetch_related
- only/defer
- bulk_create

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