summaryrefslogtreecommitdiffstats
path: root/sqlglot/transforms.py
diff options
context:
space:
mode:
Diffstat (limited to 'sqlglot/transforms.py')
-rw-r--r--sqlglot/transforms.py3
1 files changed, 2 insertions, 1 deletions
diff --git a/sqlglot/transforms.py b/sqlglot/transforms.py
index 1e6cfc8..7c7c2a7 100644
--- a/sqlglot/transforms.py
+++ b/sqlglot/transforms.py
@@ -100,7 +100,8 @@ def eliminate_qualify(expression: exp.Expression) -> exp.Expression:
outer_selects = exp.select(*[select.alias_or_name for select in expression.selects])
qualify_filters = expression.args["qualify"].pop().this
- for expr in qualify_filters.find_all((exp.Window, exp.Column)):
+ select_candidates = exp.Window if expression.is_star else (exp.Window, exp.Column)
+ for expr in qualify_filters.find_all(select_candidates):
if isinstance(expr, exp.Window):
alias = find_new_name(expression.named_selects, "_w")
expression.select(exp.alias_(expr, alias), copy=False)