Django:按日期分组然后计算每个日期的金额总和

Django: Group by date then calculate Sum of amount for each date

我有一个类似的django模型。它存储一段时间内发生的总交易。

class Transaction(models.Model):
    amount = models.FloatField()
    seller = models.ForeignKey(User, related_name='sells', on_delete=models.CASCADE)
    buyer = models.ForeignKey(User, related_name='purchased', on_delete=models.CASCADE)
    created_at_date = models.DateField(auto_now_add=True)

我的问题:

就是我怎样才能找到每天的交易总额。对于每一天,它应该计算当天所有交易的总和。

例如,我需要在过去 7 天内执行此操作。

找到解决方案,下面的查询将起作用:

Transaction.objects.filter().values('created_at__date').order_by('created_at__date').annotate(sum=Sum('amount'))

结果将是:

<QuerySet [{'created_at__date': datetime.date(2019, 1, 3), 'sum': 10000000.0}, {'created_at__date': datetime.date(2019, 1, 4), 'sum': 4367566577.0}]>