数据湖计算 DLC DQL 语法(Iceberg 表语法)

SELECT [ hints ] [ ALL | DISTINCT ] { named_expression | star_clause } [, …]FROM from_item [, …] [ LATERAL VIEW clause ] [ PIVOT clause ] [ WHERE clause ] [ GROUP BY clause ] [ HAVING clause] [ QUALIFY clau。

相关产品
数据湖计算 DLC 产品页,含版本规格、价格与购买入口。

一、TABLE METADATA

支持四段式的 Iceberg 表元数据查询,包括:history、snapshots、files、manifests。

二、语法

SELECT select_expr (, select_expr)*FROM `Catalog`.`db`.`tableName${history|snapshots|files|manifests|partitions|all_data_files|all_manifests}`[WHERE where_condition][LIMIT [offset,] rows]

三、示例

SELECT * FROM `DataLakeCatalog`.`validation`.`dempts$history` ORDER BY snapshot_id DESC LIMIT 1;SELECT * FROM `DataLakeCatalog`.`validation`.`dempts$snapshots` ORDER BY snapshot_id LIMIT 1;SELECT * FROM `DataLakeCatalog`.`validation`.`dempts$files` ORDER BY file_size_in_bytes LIMIT 1;SELECT * FROM `DataLakeCatalog`.`validation`.`dempts$manifests` ORDER BY length LIMIT 1;SELECT * FROM `DataLakeCatalog`.`validation`.`dempts$partitions` LIMIT 10;SELECT * FROM `DataLakeCatalog`.`validation`.`dempts$all_data_files` LIMIT 10;SELECT * FROM `DataLakeCatalog`.`validation`.`dempts$all_manifests` LIMIT 10;

四、FOR SYSTEM_TIME AS OF/ TIMESTAMP AS OF

Spark3.3以上支持,支持字符串和 Unix 时间戳两种格式

五、示例

SELECT empno FROM sales.emp FOR SYSTEM_TIME AS OF '1986-10-26 01:21:00';SELECT empno FROM sales.emp FOR SYSTEM_TIME AS OF 12324235546;SELECT empno FROM sales.emp TIMESTAMP AS OF '1986-10-26 01:21:00';SELECT empno FROM sales.emp TIMESTAMP AS OF 11111;

六、FOR SYSTEM_VERSION AS OF/ VERSION AS OF (Spark 3.3支持)

支持字符串和 snapshot id

七、示例

SELECT empno FROM sales.emp VERSION AS OF 'Snapshot123456789';SELECT empno FROM sales.emp VERSION AS OF 11111;SELECT empno FROM sales.emp FOR SYSTEM_VERSION AS OF 'Snapshot123456789';SELECT empno FROM sales.emp FOR SYSTEM_VERSION AS OF 11111;

八、示例

SELECT * FROM `sales`.`emp$at_timestamp_1111`;

九、示例

SELECT * FROM `sales`.`emp$snapshot_id_1111`

赞 (0)
上一篇 4天前
下一篇 4天前