1
0
Fork 0

Merging upstream version 26.0.1.

Signed-off-by: Daniel Baumann <daniel@debian.org>
This commit is contained in:
Daniel Baumann 2025-02-13 21:59:10 +01:00
parent e2fd836612
commit 63d24513e5
Signed by: daniel
GPG key ID: FBB4F0E80A80222F
65 changed files with 45416 additions and 44542 deletions

View file

@ -3759,6 +3759,10 @@ class Generator(metaclass=_Generator):
def duplicatekeyproperty_sql(self, expression: exp.DuplicateKeyProperty) -> str:
return f"DUPLICATE KEY ({self.expressions(expression, flat=True)})"
# https://docs.starrocks.io/docs/sql-reference/sql-statements/table_bucket_part_index/CREATE_TABLE/
def uniquekeyproperty_sql(self, expression: exp.UniqueKeyProperty) -> str:
return f"UNIQUE KEY ({self.expressions(expression, flat=True)})"
# https://docs.starrocks.io/docs/sql-reference/sql-statements/data-definition/CREATE_TABLE/#distribution_desc
def distributedbyproperty_sql(self, expression: exp.DistributedByProperty) -> str:
expressions = self.expressions(expression, flat=True)
@ -4612,3 +4616,24 @@ class Generator(metaclass=_Generator):
include = f"{include} AS {alias}"
return include
def xmlelement_sql(self, expression: exp.XMLElement) -> str:
name = f"NAME {self.sql(expression, 'this')}"
return self.func("XMLELEMENT", name, *expression.expressions)
def partitionbyrangeproperty_sql(self, expression: exp.PartitionByRangeProperty) -> str:
partitions = self.expressions(expression, "partition_expressions")
create = self.expressions(expression, "create_expressions")
return f"PARTITION BY RANGE {self.wrap(partitions)} {self.wrap(create)}"
def partitionbyrangepropertydynamic_sql(
self, expression: exp.PartitionByRangePropertyDynamic
) -> str:
start = self.sql(expression, "start")
end = self.sql(expression, "end")
every = expression.args["every"]
if isinstance(every, exp.Interval) and every.this.is_string:
every.this.replace(exp.Literal.number(every.name))
return f"START {self.wrap(start)} END {self.wrap(end)} EVERY {self.wrap(self.sql(every))}"