繁体   English   中英

未实现聚合()+不同的(字段)

[英]aggregate() + distinct(fields) not implemented

我的views.py中有此代码,我只想获得每个评分类别的平均值

gradepercategory = studentsEnrolledSubjectsGrade.objects.filter(Grading_Categories__in = gradingcategories.values_list('id', flat=True)).filter(
                grading_Period__in=period.values_list('id', flat=True)).distinct('Grading_Categories').aggregate(Sum('Grade'))['Grade__sum']

下面的管理站点图片可以理解我的意思

在此处输入图片说明

在您的代码中,您对不同的记录求和。 你可以这样编码

gradepercategory = studentsEnrolledSubjectsGrade.objects.filter(Grading_Categories__in = gradingcategories.values_list('id', flat=True)).filter(grading_Period__in=period.values_list('id', flat=True)).values('Grading_Categories').annotate(average_grade=Avg('Grade'))

您可以查看链接并获取更多信息。 https://docs.djangoproject.com/en/3.0/topics/db/aggregation/#aggregating-annotations

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM