Django,如何按天分组

时间:2010-09-08 12:13:33

标签: django django-models

我尝试过以下方法但没有成功:

Match.objects.filter(sendDate__gte=dateToStats).values("sendDate__day").annotate(perDay=Count("id")).order_by()

失败:

Cannot resolve keyword 'sendDate__day' into field.

其中sendDate是DateTime字段,而dateToStats只是我正在过滤的某个日期。我对每天的比赛数量感兴趣(基于sendDate)。

非常感谢你们!

1 个答案:

答案 0 :(得分:2)

我认为过滤器使用的__day机制(field__day)不适用于values。如果您的数据库具有从日期字段中提取日期的功能,则可以执行下面显示的代码段。

Match.objects.filter(sendDate__gte=dateToStats).extra(
    select = {"sendDate__day": "extract (day from sendDate)"})

Extract (day from sendDate)特定于Postgresql。您必须将其替换为数据库的等效项。