summaryrefslogtreecommitdiff
path: root/django
diff options
context:
space:
mode:
authorSimon Charette <charettes@users.noreply.github.com>2018-02-08 09:59:25 -0500
committerTim Graham <timograham@gmail.com>2018-02-08 09:59:25 -0500
commitd61fe246015aa4fdc6dcb837ffb1442fa71ae586 (patch)
tree1e9a51bc460cde84f6bd8975569fe40cf94ec830 /django
parent01bfa9219b921267a8b94ed77e5984f9ce15497a (diff)
Fixed #29108 -- Fixed crash in aggregation of distinct+ordered+sliced querysets.
Regression in 4acae21846f6212aa992763e587c7e201828d7b0. Thanks Stephen Brooks for the report.
Diffstat (limited to 'django')
-rw-r--r--django/db/models/sql/compiler.py6
1 files changed, 4 insertions, 2 deletions
diff --git a/django/db/models/sql/compiler.py b/django/db/models/sql/compiler.py
index 3080b8c3ee..1f78a8b5b2 100644
--- a/django/db/models/sql/compiler.py
+++ b/django/db/models/sql/compiler.py
@@ -547,7 +547,9 @@ class SQLCompiler:
# to exclude extraneous selects.
sub_selects = []
sub_params = []
- for select, _, alias in self.select:
+ for index, (select, _, alias) in enumerate(self.select, start=1):
+ if not alias and with_col_aliases:
+ alias = 'col%d' % index
if alias:
sub_selects.append("%s.%s" % (
self.connection.ops.quote_name('subquery'),
@@ -561,7 +563,7 @@ class SQLCompiler:
return 'SELECT %s FROM (%s) subquery' % (
', '.join(sub_selects),
' '.join(result),
- ), sub_params + params
+ ), tuple(sub_params + params)
return ' '.join(result), tuple(params)
finally: