Skip to content

Commit e883b0b

Browse files
authored
Refactor!: map duckdb LIST to ArrayAgg (#7552)
1 parent 8f572f8 commit e883b0b

3 files changed

Lines changed: 2 additions & 2 deletions

File tree

sqlglot/generators/snowflake.py

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -511,7 +511,6 @@ class SnowflakeGenerator(generator.Generator):
511511
exp.Levenshtein: unsupported_args("ins_cost", "del_cost", "sub_cost")(
512512
rename_func("EDITDISTANCE")
513513
),
514-
exp.List: rename_func("ARRAY_AGG"),
515514
exp.LocationProperty: lambda self, e: f"LOCATION={self.sql(e, 'this')}",
516515
exp.LogicalAnd: rename_func("BOOLAND_AGG"),
517516
exp.LogicalOr: rename_func("BOOLOR_AGG"),

sqlglot/parsers/duckdb.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -133,6 +133,7 @@ class DuckDBParser(parser.Parser):
133133
"JSON_ARRAY": lambda args: exp.JSONArray(expressions=args),
134134
"JSON_EXTRACT_PATH": parser.build_extract_json_with_path(exp.JSONExtract),
135135
"JSON_EXTRACT_STRING": parser.build_extract_json_with_path(exp.JSONExtractScalar),
136+
"LIST": exp.ArrayAgg.from_arg_list,
136137
"LIST_DISTINCT": exp.ArrayDistinct.from_arg_list,
137138
"LIST_APPEND": exp.ArrayAppend.from_arg_list,
138139
"LIST_CONCAT": parser.build_array_concat,

tests/dialects/test_duckdb.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -693,7 +693,7 @@ def test_duckdb(self):
693693
self.validate_all(
694694
"SELECT LIST(col) FROM t",
695695
write={
696-
"duckdb": "SELECT LIST(col) FROM t",
696+
"duckdb": "SELECT ARRAY_AGG(col) FROM t",
697697
"snowflake": "SELECT ARRAY_AGG(col) FROM t",
698698
},
699699
)

0 commit comments

Comments
 (0)