annotate的问题
来源:5-3 Django中聚合与统计的使用
江民川
2020-07-06 17:02:30
q=Book.objects.annotate(****),这里和aggregate不一样,aggregate前还有个.all(),而且使用aggregate时不需要赋值“q=”。所以这两个aggregate和annotate有什么本质区别吗?
Book.objects.all()是一个QuerySet对象,那Book.objects.annotate(****)也是吗?Book.objects.all().aggregate(****)又是什么类型的东西?
1回答
好帮手慕笑蓉
2020-07-06
同学,你好。annotate的一个更好的理解是分组,如果想要对数据集先进行分组然后再进行某些聚合操作或排序时,需要使用annotate方法来实现,即对每一项进行聚合计算。而aggregate方法是对每一个结果进行聚合统计。
如果解决了你的疑惑,请采纳,祝学习愉快~
相似问题
回答 1
回答 1