diff options
Diffstat (limited to 'sqlglot/dialects/presto.py')
-rw-r--r-- | sqlglot/dialects/presto.py | 10 |
1 files changed, 2 insertions, 8 deletions
diff --git a/sqlglot/dialects/presto.py b/sqlglot/dialects/presto.py index 291b478..078da0b 100644 --- a/sqlglot/dialects/presto.py +++ b/sqlglot/dialects/presto.py @@ -32,13 +32,6 @@ def _approx_distinct_sql(self: generator.Generator, expression: exp.ApproxDistin return f"APPROX_DISTINCT({self.sql(expression, 'this')}{accuracy})" -def _datatype_sql(self: generator.Generator, expression: exp.DataType) -> str: - sql = self.datatype_sql(expression) - if expression.is_type("timestamptz"): - sql = f"{sql} WITH TIME ZONE" - return sql - - def _explode_to_unnest_sql(self: generator.Generator, expression: exp.Lateral) -> str: if isinstance(expression.this, (exp.Explode, exp.Posexplode)): expression = expression.copy() @@ -231,6 +224,7 @@ class Presto(Dialect): TABLE_HINTS = False QUERY_HINTS = False IS_BOOL_ALLOWED = False + TZ_TO_WITH_TIME_ZONE = True STRUCT_DELIMITER = ("(", ")") PROPERTIES_LOCATION = { @@ -245,6 +239,7 @@ class Presto(Dialect): exp.DataType.Type.FLOAT: "REAL", exp.DataType.Type.BINARY: "VARBINARY", exp.DataType.Type.TEXT: "VARCHAR", + exp.DataType.Type.TIMETZ: "TIME", exp.DataType.Type.TIMESTAMPTZ: "TIMESTAMP", exp.DataType.Type.STRUCT: "ROW", } @@ -265,7 +260,6 @@ class Presto(Dialect): exp.BitwiseXor: lambda self, e: f"BITWISE_XOR({self.sql(e, 'this')}, {self.sql(e, 'expression')})", exp.Cast: transforms.preprocess([transforms.epoch_cast_to_ts]), exp.CurrentTimestamp: lambda *_: "CURRENT_TIMESTAMP", - exp.DataType: _datatype_sql, exp.DateAdd: lambda self, e: self.func( "DATE_ADD", exp.Literal.string(e.text("unit") or "day"), e.expression, e.this ), |