
我们可以进行一个
GROUP BY ... COUNT或者一个
GROUP BY ... SUM在Django的ORM SQL的等效查询,使用的
annotate(),
values()的
django.db.models的
Count和
Sum尊敬和可选的方法
order_by()方法:
GROUP BY … COUNT:
from django.db.models import Countresult = Books.objects.values('author').order_by('author').annotate(count=Count('author'))author和
count:
author | count------------|------- oneAuthor | 5OtherAuthor | 2 ... | ...
|
GROUP BY … SUM:
from django.db.models import Sum result = Books.objects.values('author') .order_by('author') .annotate(total_price=Sum('price'))现在结果包含一个包含两列的字典:author和total_price:
author | total_price------------|------------- oneAuthor | 100.35OtherAuthor | 50.00 ... | ...
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)