diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2023-07-06 07:28:12 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2023-07-06 07:28:12 +0000 |
commit | 374a0f6318bcf423b1b784d30b25a8327c65cb24 (patch) | |
tree | 9303a1cbdba85b5d9781ebef32eb1902d3790c99 /sqlglot/transforms.py | |
parent | Releasing debian version 16.7.7-1. (diff) | |
download | sqlglot-374a0f6318bcf423b1b784d30b25a8327c65cb24.tar.xz sqlglot-374a0f6318bcf423b1b784d30b25a8327c65cb24.zip |
Merging upstream version 17.2.0.
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'sqlglot/transforms.py')
-rw-r--r-- | sqlglot/transforms.py | 23 |
1 files changed, 3 insertions, 20 deletions
diff --git a/sqlglot/transforms.py b/sqlglot/transforms.py index 33a1bc0..1e6cfc8 100644 --- a/sqlglot/transforms.py +++ b/sqlglot/transforms.py @@ -124,7 +124,9 @@ def remove_precision_parameterized_types(expression: exp.Expression) -> exp.Expr other expressions. This transforms removes the precision from parameterized types in expressions. """ for node in expression.find_all(exp.DataType): - node.set("expressions", [e for e in node.expressions if isinstance(e, exp.DataType)]) + node.set( + "expressions", [e for e in node.expressions if not isinstance(e, exp.DataTypeSize)] + ) return expression @@ -215,25 +217,6 @@ def explode_to_unnest(expression: exp.Expression) -> exp.Expression: return expression -def remove_target_from_merge(expression: exp.Expression) -> exp.Expression: - """Remove table refs from columns in when statements.""" - if isinstance(expression, exp.Merge): - alias = expression.this.args.get("alias") - targets = {expression.this.this} - if alias: - targets.add(alias.this) - - for when in expression.expressions: - when.transform( - lambda node: exp.column(node.name) - if isinstance(node, exp.Column) and node.args.get("table") in targets - else node, - copy=False, - ) - - return expression - - def remove_within_group_for_percentiles(expression: exp.Expression) -> exp.Expression: if ( isinstance(expression, exp.WithinGroup) |