我有两张桌子
Class Billing(models.Model):
id=models.AutoField(primary_key=True)
.....
#Some more fields
....
Class BillInfo(models.Model):
id=models.AutoField(primary_key=True)
billing=models.ForeignKey(Billing)
testId=models.ForeignKey(AllTests)
costOfTest=models.IntegerField(default=0)
concession=models.IntegerField(default=0)
这里BillInfo
是垂直表,即一个Billing
有多个{Billing
的Sum(costOfTest - concession)
。在
我可以用一个查询来实现这一点吗?在
需要帮助,谢谢。在
你可以这样写:
在这里,这个
QuerySet
中的每个Billing
对象都有一个额外的属性.the_sum
,它是所有costOfTest
减去所有与之相关的BillingInfo
对象的concession
之和。在计算此值的SQL查询将大致如下所示:
^{pr2}$因此,当您“具体化”查询时,查询将在单个调用中获得所有对象的总和。在
对于没有任何相关的} [Django-doc]函数来避免:
Billing
对象,the_sum
属性将是None
,我们可以通过使用^{相关问题 更多 >
编程相关推荐