我有這兩個模型,我想返回的總和。我得到一個關於返回多行的子查詢的數據庫錯誤。不使用for語句比較兩者的最佳方法是什麼?Django Queryset比較兩個不同的模型與多行
AuthorizationT(models.Model)
ar_id = models.BigIntegerField(blank=True, null=True)
status_flag = models.BigIntegerField(blank=True, null=True)
BillT(models.Model)
paid_id = models.BigIntegerField(blank=True, null=True)
recvd = models.FloatField(blank=True, null=True)
查詢我試圖
paidbill= BillT.objects.values_list('paid_id', flat=true)
AuthorizationT.objects.values().filter(ar_id=paidbill, status_flag=0).aggregate(Sum('recvd'))
在SQL我知道這將是
select sum(recvd) from authorization_t a, bill_t b where a.ar_billid0= b.paid_id and a.status_flag=0
我正在尋找在查詢集相當於
我認爲這裏的問題將不會工作,因爲該字段是'BillT'模型的一部分。問題來自原始查詢 – Aditya