我想获得过去3个月内总数的平均值。我有一个名为“书”的对象,其属性为“总计”。我需要将总数相加并除以3才能得到一个月的平均值。
这是我的代码:
&& echo
我尝试过:
past_3_month_avg = Book.objects.filter(trandate_b__range=(past_3_month_first_day,current_month_first_day)).aggregate(Sum('total'))
返回错误:
past_3_month_avg = Book.objects.filter(trandate_b__range=(past_3_month_first_day,current_month_first_day)).aggregate(Sum('total')/3)
答案 0 :(得分:0)
尝试
past_3_month_avg = Book.objects.filter(trandate_b__range=(past_3_month_first_day,current_month_first_day)).aggregate(sum=Sum('total'))['sum']/3
这样命名结果。
答案 1 :(得分:0)
您必须在汇总方法中提供平均值的名称。
past_3_month_data = Book.objects.filter(trandate_b__range(past_3_month_first_day,current_month_first_day)).aggregate(total_val_in_3_months=Sum('total'))
这将为您提供一个包含键名“ total”且值等于过去3个月的Sum(total)的字典。
past_3_month_avg = past_3_month_data.get('total_val_in_3_months')/3