Using the Django DateQuerySet
I'm pulling related years for item
objects from a Group
query.
>>> Group.objects.all().dates('item__date', 'year')
[datetime.date(1990, 1, 1), datetime.date(1991, 1, 1), ...(remaining elements truncated)...']
Now I want to perform a count by distinct year on these dates. I thought this would work:
>>> Group.objects.all().dates('item__date', 'year').annotate(Count('year'))
FieldError: Cannot resolve keyword 'year' into field.
But looks like I'm missing something. How can I fix this query?
I've also tried this query:
>>> (Group
.objects
.all()
.extra(select=
{'year':
connections[Group.objects.db].ops.date_trunc_sql('year', 'app_item.date')}))
ProgrammingError: missing FROM-clause entry for table "app_item" LINE 1: SELECT (DATE_TRUNC('year', app_item.date)) AS...
But that doesn't work either.