Django查询组与计算

时间:2017-12-04 01:27:46

标签: sql django

我想知道是否可以在查询中进行更高级的计算?

我在这里得到的数据很好,并希望增加利润,即总和(贷方) - 总和(借方)。

我的错误:无法计算Sum('credit'):'credit'是一个聚合

trd = Trades.objects.all ().filter ( acct_id = acct.id ) 
      .values ( 'issue' ) 
      .annotate (
        cnt = Count ( 'issue' ),
        debit = Sum ( 'debit' ),
        credit = Sum ( 'credit' ),
        shrs = Sum ( 'shares' ),
        profit = Sum ( 'credit' ) - Sum ( 'debit' )
    ) 
    .order_by ( 'issue' )

感谢。

1 个答案:

答案 0 :(得分:0)

而不是SUM(credit) - SUM(debit),看看你是否可以做相当于profit = SUM('credit'-'debit').的那个应该给你想要的结果,但是删除了django抱怨的SUM的和。