summaryrefslogtreecommitdiff
path: root/django/db/models/sql/query.py
diff options
context:
space:
mode:
authorSimon Charette <charette.s@gmail.com>2023-12-15 21:00:59 -0500
committerMariusz Felisiak <felisiak.mariusz@gmail.com>2023-12-16 20:19:24 +0100
commit77278929c86168f075600d9d8c8e76a4792e672b (patch)
tree62c5808bac7712ec85d4d99958dd3788e9e54c56 /django/db/models/sql/query.py
parenteea4f92f9aa57d1b25f1c28d11c3b5a6a5841e82 (diff)
Fixed #35042 -- Fixed a count() crash on combined queries.
Regression in 59bea9efd2768102fc9d3aedda469502c218e9b7. Thanks Marcin for the report.
Diffstat (limited to 'django/db/models/sql/query.py')
-rw-r--r--django/db/models/sql/query.py6
1 files changed, 3 insertions, 3 deletions
diff --git a/django/db/models/sql/query.py b/django/db/models/sql/query.py
index 2bc16b1df3..7166b8cb5d 100644
--- a/django/db/models/sql/query.py
+++ b/django/db/models/sql/query.py
@@ -520,11 +520,11 @@ class Query(BaseExpression):
self.model._meta.pk.get_col(inner_query.get_initial_alias()),
)
inner_query.default_cols = False
- if not qualify:
+ if not qualify and not self.combinator:
# Mask existing annotations that are not referenced by
# aggregates to be pushed to the outer query unless
- # filtering against window functions is involved as it
- # requires complex realising.
+ # filtering against window functions or if the query is
+ # combined as both would require complex realiasing logic.
annotation_mask = set()
if isinstance(self.group_by, tuple):
for expr in self.group_by: