DjangoORMだけでこのSQLクエリを使用して取得できる結果を取得できるかどうか疑問に思っています。
SELECT * FROM (SELECT DATE_FORMAT(created, "%Y") as dte, sum(1) FROM some_table GROUP BY dte) as analytics;
結果は次のとおりです。
+------+--------+
| dte | sum(1) |
+------+--------+
| 2006 | 20 |
| 2007 | 2230 |
| 2008 | 4929 |
| 2009 | 1177 |
+------+--------+
簡略化されたモデルは次のようになります。
# some/models.py
class Table(models.Model):
created = models.DateTimeField(default=datetime.datetime.now)
.extra(select = {})と.values()を組み合わせて、またここで説明する.query.group_byトリックを使用してさまざまな方法を試しましたが、問題に新たな目を向けていただければ幸いです。