diff --git a/django/db/models/sql/query.py b/django/db/models/sql/query.py index c5c7ee07ee..8914bce15c 100644 --- a/django/db/models/sql/query.py +++ b/django/db/models/sql/query.py @@ -371,7 +371,11 @@ class Query(object): qn(lhs_col), qn(alias), qn(col))) else: result.append('%s%s' % (qn(name), alias_str)) - result.extend(self.extra_tables) + extra_tables = [] + for t in self.extra_tables: + alias, created = self.table_alias(t) + if created: + result.append(', %s' % alias) return result, [] def get_grouping(self): diff --git a/tests/regressiontests/queries/models.py b/tests/regressiontests/queries/models.py index afc70dee9a..64baacc32d 100644 --- a/tests/regressiontests/queries/models.py +++ b/tests/regressiontests/queries/models.py @@ -202,5 +202,9 @@ Bug #2400 [] >>> Tag.objects.filter(item__isnull=True) [] + +Bug #2496 +>>> Item.objects.extra(tables=['queries_author']).select_related().order_by('name')[:1] +[] """}