tencent cloud

Data Lake Compute

DQL構文

PDF
フォーカスモード
フォントサイズ
最終更新日: 2025-12-25 12:00:06

SELECT

構文

SELECT [ hints ] [ ALL | DISTINCT ] { named_expression | star_clause } [, ...]
FROM from_item [, ...]
[ LATERAL VIEW clause ]
[ PIVOT clause ]
[ WHERE clause ]
[ GROUP BY clause ]
[ HAVING clause]
[ QUALIFY clause ]
from_item
{ table_name [ TABLESAMPLE clause ] [ table_alias ] |
JOIN clause |
[ LATERAL ] table_valued_function [ table_alias ] |
VALUES clause |
[ LATERAL ] ( query ) [ TABLESAMPLE clause ] [ table_alias ] }
named_expression
expression [ column_alias ]
star_clause
[ { table_name | view_name } . ] *

TABLE METADATA

4段階のIcebergテーブルメタデータクエリをサポートします。これには、historysnapshotsfilesmanifestsが含まれます。

構文

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;

TIME TRAVEL

FOR SYSTEM_TIME AS OF/ TIMESTAMP AS OF

Spark3.3以上でサポートされており、文字列とUnixタイムスタンプの2つの形式をサポートしています

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でサポート)

文字列とスナップショット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;

AT_TIMESTAMP_XXXX

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

SNAPSHOT_ID_XXXX

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




ヘルプとサポート

この記事はお役に立ちましたか?

フィードバック