Django ORM GROUP BY和SUM

时间:2018-03-16 19:05:40

标签: django orm

一些有GROP BY和SUM的混乱 Django ORM进行了这个查询:

"SELECT "p_record"."h", SUM("p_record"."size") AS "size__sum" FROM "p_record" GROUP BY "p_record"."h", "p_record"."size" ORDER BY "p_record"."size" DESC LIMIT 15"

当我做的时候

record.objects.all().values('h').annotate(Sum('size')).order_by('-size')[:15]

record.objects.all().values('h').order_by('h').annotate(Sum('size')).order_by('-size')[:15]

但是'h'没有分组!哪里错过了bug? 在sqlite和postgres上测试。 Django 10.6

有一些结果:

.
      h:         size:
  <li>"aa.ss.aa" = 15</li>
  <li>"aa.dd.aa" = 2</li>
  <li>"aa.ss.aa" = 4</li>
  <li>"zz.aa.cc" = 9</li>
  <li>"aa.ss.aa" = 9</li>

1 个答案:

答案 0 :(得分:0)

这是工作

y

由'h'求和并按Sum size

排序