两个日期之间的值

时间:2018-05-24 21:58:45

标签: python django

我在Django中有一个数据库包含按日期存储的金额和值, 我想计算两个日期之间的值或金额 怎么做?

Date           the value
01/01/2018     500$
01/02/2018     700$
01/03/2018     800$

如何计算从01/01/201801/02/2018的值?

1 个答案:

答案 0 :(得分:1)

首先,范围数据之间的值的查询集:

queryset = Model.objects.filter(
                    Q(date__gte = date_start) & 
                    Q(date__lte = date_end)
            )

然后使用Sum,您可以得到value

的总和
queryset.aggreage(total=Sum('value'))

完整代码:

>>> from django.db.moedls import Q, Sum

>>> Model.objects.filter(
                    Q(date__gte = date_start) & 
                    Q(date__lte = date_end)
            ).aggreage(total=Sum('value'))

>>> {'total': 'a_number_here'}
  

date_start,date_end应为datedatetime对象