【发布时间】:2015-07-28 00:28:20
【问题描述】:
我一直在尝试使用DateTimeField 将表格结果分组为每小时格式。
SQL:
SELECT strftime('%H', created_on), count(*)
FROM users_test
GROUP BY strftime('%H', created_on);
这个查询工作正常,但相应的 Django 查询却不行。
我尝试过的 Django 查询:
Test.objects.extra({'hour': 'strftime("%%H", created_on)'}).values('hour').annotate(count=Count('id'))
# SELECT (strftime("%H", created_on)) AS "hour", COUNT("users_test"."id") AS "count" FROM "users_test" GROUP BY (strftime("%H", created_on)), "users_test"."created_on" ORDER BY "users_test"."created_on" DESC
它通过“users_test”添加了额外的组。“created_on”,我猜这给出了不正确的结果。
如果有人能向我解释这一点并提供解决方案,那就太好了。
环境:
- Python 3
- Django 1.8.1
提前致谢
参考(可能重复)(但没有帮助):
【问题讨论】:
标签: django postgresql django-1.8