以django为单位获取每小时的总和
我有一个模型,它包含两个字段DateTimeField和一个IntegerField。 我想以小时为单位对总整数求和以django为单位获取每小时的总和,django,filter,django-rest-framework,Django,Filter,Django Rest Framework,我有一个模型,它包含两个字段DateTimeField和一个IntegerField。 我想以小时为单位对总整数求和 class ModelA(models.Model): date_time = models.DateTimeField() relative_change = models.IntegerField() 现在我想查询modelA,这样它将返回每小时相对_变化的总和,好的方法是什么? 我检查了这个,但我不清楚那里的“小时”是什么。 输出应该如下所示 [ {
class ModelA(models.Model):
date_time = models.DateTimeField()
relative_change = models.IntegerField()
现在我想查询modelA,这样它将返回每小时相对_变化的总和,好的方法是什么?
我检查了这个,但我不清楚那里的“小时”是什么。
输出应该如下所示
[
{
"time":"9-10",
"relative_change":"20"
},
{
"time":"10-11",
"relative_change":"40"
},
{
"time":"11-12",
"relative_change":12
}
]
这应该做到:
from django.db.models import Sum
queryset = (
ModelA
.objects
.values('date_time__hour')
.annotate(relative_change_sum=Sum('relative_change')
)
您应该预期以下结果:
<QuerySet [{
'date_time__hour': 9,
'relative_change_sum': 20,
}, {
'date_time__hour': 10,
'relative_change_sum': 40,
}]
以下是有关“小时”查找的更多详细信息:
相对变化的计数或总和?是,相对变化的总和