Junior — Senior
55
Подсчёт количества запросов к базе в Django ORM
被问到的公司:
X5
任务条件
Определите, сколько SQL‑запросов будет отправлено к базе данных при выполнении следующих операций в Django ORM.
from django.db import models
class Author(models.Model):
name = models.CharField(max_length=255)
class Book(models.Model):
name = models.CharField(max_length=255)
author = models.ForeignKey(Author, on_delete=models.CASCADE, related_name='books')
price = models.IntegerField(default=100)
# Получаем QuerySet со всеми книгами
books_qs = Book.objects.all()
# Фильтруем книги по первому автору
books_by_author1 = books_qs.filter(author_id=1)
# Фильтруем книги по второму автору
books_by_author2 = books_qs.filter(author_id=2)
Проанализируйте, какие запросы будет выполнены при создании books_qs и при каждом из фильтров.