﻿id	summary	reporter	owner	description	type	status	component	version	severity	resolution	keywords	cc	stage	has_patch	needs_docs	needs_tests	needs_better_patch	easy	ui_ux
30771	Filtering on query result overrides GROUP BY of internal query	Aur Saraf	James Timmins	"{{{#!python
from django.contrib.auth import models

a = models.User.objects.filter(email__isnull=True).values('email').annotate(m=Max('id')).values('m')
print(a.query) # good
# SELECT MAX(""auth_user"".""id"") AS ""m"" FROM ""auth_user"" WHERE ""auth_user"".""email"" IS NULL GROUP BY ""auth_user"".""email""
print(a[:1].query) # good
# SELECT MAX(""auth_user"".""id"") AS ""m"" FROM ""auth_user"" WHERE ""auth_user"".""email"" IS NULL GROUP BY ""auth_user"".""email""  LIMIT 1
b = models.User.objects.filter(id=a[:1])
print(b.query) # GROUP BY U0.""id"" should be GROUP BY U0.""email""
# SELECT ... FROM ""auth_user"" WHERE ""auth_user"".""id"" = (SELECT U0.""id"" FROM ""auth_user"" U0 WHERE U0.""email"" IS NULL GROUP BY U0.""id""  LIMIT 1)
}}}"	Bug	closed	Database layer (models, ORM)	dev	Normal	fixed	annotate, annotation, filter, groupby, aggregate, aggregation		Accepted	1	0	0	0	0	0
