Merging upstream version 10.1.3.
Signed-off-by: Daniel Baumann <daniel@debian.org>
This commit is contained in:
parent
582b160275
commit
a5128ea109
57 changed files with 1542 additions and 529 deletions
|
@ -56,12 +56,12 @@ def _derived_table_values_to_unnest(self, expression):
|
|||
|
||||
|
||||
def _returnsproperty_sql(self, expression):
|
||||
value = expression.args.get("value")
|
||||
if isinstance(value, exp.Schema):
|
||||
value = f"{value.this} <{self.expressions(value)}>"
|
||||
this = expression.this
|
||||
if isinstance(this, exp.Schema):
|
||||
this = f"{this.this} <{self.expressions(this)}>"
|
||||
else:
|
||||
value = self.sql(value)
|
||||
return f"RETURNS {value}"
|
||||
this = self.sql(this)
|
||||
return f"RETURNS {this}"
|
||||
|
||||
|
||||
def _create_sql(self, expression):
|
||||
|
@ -142,6 +142,11 @@ class BigQuery(Dialect):
|
|||
),
|
||||
}
|
||||
|
||||
FUNCTION_PARSERS = {
|
||||
**parser.Parser.FUNCTION_PARSERS,
|
||||
}
|
||||
FUNCTION_PARSERS.pop("TRIM")
|
||||
|
||||
NO_PAREN_FUNCTIONS = {
|
||||
**parser.Parser.NO_PAREN_FUNCTIONS,
|
||||
TokenType.CURRENT_DATETIME: exp.CurrentDatetime,
|
||||
|
@ -174,6 +179,7 @@ class BigQuery(Dialect):
|
|||
exp.Values: _derived_table_values_to_unnest,
|
||||
exp.ReturnsProperty: _returnsproperty_sql,
|
||||
exp.Create: _create_sql,
|
||||
exp.Trim: lambda self, e: f"TRIM({self.format_args(e.this, e.expression)})",
|
||||
exp.VolatilityProperty: lambda self, e: f"DETERMINISTIC"
|
||||
if e.name == "IMMUTABLE"
|
||||
else "NOT DETERMINISTIC",
|
||||
|
@ -200,9 +206,7 @@ class BigQuery(Dialect):
|
|||
exp.VolatilityProperty,
|
||||
}
|
||||
|
||||
WITH_PROPERTIES = {
|
||||
exp.AnonymousProperty,
|
||||
}
|
||||
WITH_PROPERTIES = {exp.Property}
|
||||
|
||||
EXPLICIT_UNION = True
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue