Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Django SQL查询计数_Sql_Django_Django Models - Fatal编程技术网

Django SQL查询计数

Django SQL查询计数,sql,django,django-models,Sql,Django,Django Models,我在Django有以下型号: class Author(models.Model): name = models.CharField(max_length=120) country = models.CharField(max_length=100) class Book(models.Model): title = models.CharField(max_length=1024) publisher = models.CharField(max_length

我在Django有以下型号:

class Author(models.Model):
    name = models.CharField(max_length=120)
    country = models.CharField(max_length=100)

class Book(models.Model):
    title = models.CharField(max_length=1024)
    publisher = models.CharField(max_length=255)
    published_date = models.DateField()
    author = models.ForeignKey(Author)
作者表中有9条记录,图书表中有4条记录

计算Book.objects.select\u related().all()时将发出多少SQL查询

我的猜测是4,因为Book表中有4行,所以每个行查询1次,以搜索与每本书相关的所有作者。为什么我的答案是错的

可能的选择是5、4、10和1。

返回一个
QuerySet
,它将“遵循”外键关系,在执行查询时选择其他相关对象数据。这是一个性能提升器,它会导致一个更复杂的查询,但这意味着以后使用外键关系将不需要数据库查询