簡體   English   中英

為什么django組被錯誤的領域?注釋()

[英]Why django group by wrong field? annotate()

為什么Django Group by id Field? 這是queryset:

MyModel.objects\
    .filter(
        status=1,
        created__gte=datestart,
        created__lte=dateend)\
    .values('terminal_id')\
    .annotate(
        total_pa=Sum('amount'),
        total_ar=Sum('amount_result')).query

但它由pk字段命令和分組。

...... GROUP BY payment id ORDER BY payment id ...

代替

...... GROUP BY payment terminal_id訂購payment terminal_id ...

請參閱此處的“警告”:

https://docs.djangoproject.com/en/1.8/topics/db/aggregation/#interaction-with-default-ordering-or-order-by

也許默認的順序正在阻礙。 嘗試將.order_by()添加到查詢的末尾,以查看是否清除了排序。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM