Skip to content

Commit

Permalink
fix(clickhouse): do not render aliases when compiling aggregate expre…
Browse files Browse the repository at this point in the history
…ssion components
  • Loading branch information
cpcloud committed Mar 24, 2023
1 parent 4f4d962 commit 46caf3b
Show file tree
Hide file tree
Showing 2 changed files with 9 additions and 6 deletions.
7 changes: 4 additions & 3 deletions ibis/backends/clickhouse/compiler/relations.py
Expand Up @@ -72,6 +72,7 @@ def _selection(op: ops.Selection, *, table, needs_alias=False, **kw):
@translate_rel.register(ops.Aggregation)
def _aggregation(op: ops.Aggregation, *, table, **kw):
tr_val = partial(translate_val, **kw)
tr_val_no_alias = partial(translate_val, render_aliases=False, **kw)

by = tuple(map(tr_val, op.by))
metrics = tuple(map(tr_val, op.metrics))
Expand All @@ -82,13 +83,13 @@ def _aggregation(op: ops.Aggregation, *, table, **kw):
sel = sel.group_by(*map(str, range(1, len(by) + 1)), dialect="clickhouse")

if predicates := op.predicates:
sel = sel.where(*map(tr_val, predicates), dialect="clickhouse")
sel = sel.where(*map(tr_val_no_alias, predicates), dialect="clickhouse")

if having := op.having:
sel = sel.having(*map(tr_val, having), dialect="clickhouse")
sel = sel.having(*map(tr_val_no_alias, having), dialect="clickhouse")

if sort_keys := op.sort_keys:
sel = sel.order_by(*map(tr_val, sort_keys), dialect="clickhouse")
sel = sel.order_by(*map(tr_val_no_alias, sort_keys), dialect="clickhouse")

return sel

Expand Down
8 changes: 5 additions & 3 deletions ibis/backends/clickhouse/compiler/values.py
Expand Up @@ -49,9 +49,11 @@ def _column(op, *, aliases, **_):


@translate_val.register(ops.Alias)
def _alias(op, **kw):
val = translate_val(op.arg, **kw)
return sg.alias(val, op.name, dialect="clickhouse")
def _alias(op, render_aliases: bool = True, **kw):
val = translate_val(op.arg, render_aliases=render_aliases, **kw)
if render_aliases:
return sg.alias(val, op.name, dialect="clickhouse")
return val


_interval_cast_suffixes = {
Expand Down

0 comments on commit 46caf3b

Please sign in to comment.