Skip to content

Commit 835e717

Browse files
feat(clickhouse): transform function support (#4408)
* feat!: make transform function accept variable amount of expressions * feat(clickhouse): transform function support * Pop transform instead of adding an entry --------- Co-authored-by: Jo <[email protected]>
1 parent 6b4fb7d commit 835e717

File tree

2 files changed

+7
-0
lines changed

2 files changed

+7
-0
lines changed

sqlglot/dialects/clickhouse.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -275,6 +275,7 @@ class Parser(parser.Parser):
275275
"EDITDISTANCE": exp.Levenshtein.from_arg_list,
276276
"LEVENSHTEINDISTANCE": exp.Levenshtein.from_arg_list,
277277
}
278+
FUNCTIONS.pop("TRANSFORM")
278279

279280
AGG_FUNCTIONS = {
280281
"count",

tests/dialects/test_clickhouse.py

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1253,3 +1253,9 @@ def test_window_functions(self):
12531253
self.validate_identity(
12541254
"SELECT row_number() OVER (PARTITION BY column2 ORDER BY column3) FROM table"
12551255
)
1256+
1257+
def test_functions(self):
1258+
self.validate_identity("SELECT TRANSFORM(foo, [1, 2], ['first', 'second']) FROM table")
1259+
self.validate_identity(
1260+
"SELECT TRANSFORM(foo, [1, 2], ['first', 'second'], 'default') FROM table"
1261+
)

0 commit comments

Comments
 (0)