【问题标题】:Django Include Aggregate Sums of ZeroDjango包括零的总和
【发布时间】:2011-02-21 10:07:24
【问题描述】:

我正在开发一个 Django 时间表应用程序,但无法弄清楚如何包含等于零的总和。如果我这样做:

entries = TimeEntry.objects.all().values("user__username").annotate(Sum("hours"))

我得到所有具有时间条目及其总和的用户。

[{'username': u'bob' 'hours__sum':49}, {'username': u'jane' 'hours__sum':10}]

当我按给定日期过滤时:

filtered_entries = entries.filter(date="2010-05-17")

没有输入当天时间的任何人都将被排除在外。有没有办法将总和为 0 的用户包括在内?

谢谢

【问题讨论】:

    标签: django django-aggregation


    【解决方案1】:

    也许您可以反过来尝试这种关系——从用户开始,然后链接到条目:

    User.objects.all().values("username").annotate(Sum("timeentry__hours"))
    

    这行得通吗?

    【讨论】:

    • 对不起,也没有骰子。 (还是)感谢你的建议。以上给了我我一直在寻找的东西。一旦我将过滤器放入所有零和中,人们就会被删除。我在 annotate() 之后和之前尝试了过滤器。
    猜你喜欢
    • 2021-11-19
    • 2023-03-19
    • 2018-12-18
    • 1970-01-01
    • 2010-09-23
    • 2021-01-02
    • 2019-04-04
    • 1970-01-01
    • 2023-03-26
    相关资源
    最近更新 更多