The syntax depends on whether the Datalake object was created with TABLE FORMAT ICEBERG or TABLE FORMAT DELTALAKE.
TABLE FORMAT ICEBERG Syntax
CREATE TABLE datalake_name.otf_database_name.otf_table_name ( column_specification [,...] ) [ { PARTITION | PARTITIONED } BY partition_specification ] [ { SORTED | ORDER } BY sort_specification [,...] ] [ { TBLPROPERTIES | PROPERTIES } ( [ property [,...] ] ) ][;]
- column_specification
column_name data_type [ NOT NULL ]
- partition_specification
[ transform [,...] ] [,] [ column_name [,...] ]
- sort_specification
column_name [ ASC | DESC ]- property
'property_name'='property_value'
- transform
{ IDENTITY (column_name) | BUCKET ( bucket_number, column_name) | TRUNCATE ( { width | length }, column_name) | YEAR (column_name) MONTH (column_name) DAY (column_name) HOUR (column_name) NULL (column_name) }
TABLE FORMAT DELTALAKE Syntax
CREATE TABLE datalake_name.otf_database_name.otf_table_name ( column_specification [,...] ) [ { PARTITION | PARTITIONED } BY partition_specification ] [ { TBLPROPERTIES | PROPERTIES } ( [ property [,...] ] ) ][;]
- column_specification
column_name data_type [ NOT NULL ]
- partition_specification
{ column_name | ( column_name [,...] ) } }- property
'property_name'='property_value'