diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-06-03 20:08:03 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-06-03 20:08:03 +0000 |
commit | cf606e6b9c2bd703d35537ef8880a8b80edf52a5 (patch) | |
tree | ac3c8e940fabdaa513920df2a58284fe4e8c84ee /sqlglot/dialects/redshift.py | |
parent | Releasing debian version 24.0.0-1. (diff) | |
download | sqlglot-cf606e6b9c2bd703d35537ef8880a8b80edf52a5.tar.xz sqlglot-cf606e6b9c2bd703d35537ef8880a8b80edf52a5.zip |
Merging upstream version 24.1.0.
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'sqlglot/dialects/redshift.py')
-rw-r--r-- | sqlglot/dialects/redshift.py | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/sqlglot/dialects/redshift.py b/sqlglot/dialects/redshift.py index d3388e7..df6985d 100644 --- a/sqlglot/dialects/redshift.py +++ b/sqlglot/dialects/redshift.py @@ -63,6 +63,9 @@ class Redshift(Postgres): "DATE_DIFF": _build_date_delta(exp.TsOrDsDiff), "GETDATE": exp.CurrentTimestamp.from_arg_list, "LISTAGG": exp.GroupConcat.from_arg_list, + "SPLIT_TO_ARRAY": lambda args: exp.StringToArray( + this=seq_get(args, 0), expression=seq_get(args, 1) or exp.Literal.string(",") + ), "STRTOL": exp.FromBase.from_arg_list, } @@ -124,6 +127,7 @@ class Redshift(Postgres): "TOP": TokenType.TOP, "UNLOAD": TokenType.COMMAND, "VARBYTE": TokenType.VARBINARY, + "MINUS": TokenType.EXCEPT, } KEYWORDS.pop("VALUES") @@ -186,6 +190,7 @@ class Redshift(Postgres): e: f"{'COMPOUND ' if e.args['compound'] else ''}SORTKEY({self.format_args(*e.this)})", exp.StartsWith: lambda self, e: f"{self.sql(e.this)} LIKE {self.sql(e.expression)} || '%'", + exp.StringToArray: rename_func("SPLIT_TO_ARRAY"), exp.TableSample: no_tablesample_sql, exp.TsOrDsAdd: date_delta_sql("DATEADD"), exp.TsOrDsDiff: date_delta_sql("DATEDIFF"), |