📣
TiDB Cloud Premium 开放公测中。为企业级工作负载提供无限扩展、即时弹性伸缩和高级安全保障。此页面由 AI 自动翻译,英文原文请见此处。

在 Stage 中查询 TSV 文件



本指南介绍如何从 stage 中查询 TSV 文件(在 TiDB Cloud Lake v1.2.890-nightly 及更高版本中称为 TEXT)。为兼容旧版本服务器,示例中仍使用 TSV。

语法

教程

第 1 步:创建外部 Stage

创建一个外部 stage,使用你自己的 S3 存储桶和凭证来存放 TSV 文件。

CREATE STAGE tsv_query_stage URL = 's3://load/tsv/' CONNECTION = ( ACCESS_KEY_ID = '<your-access-key-id>' SECRET_ACCESS_KEY = '<your-secret-access-key>' );

第 2 步:创建自定义 TSV 文件格式

CREATE FILE FORMAT tsv_query_format TYPE = TSV, RECORD_DELIMITER = '\n', FIELD_DELIMITER = ',', COMPRESSION = AUTO;

第 3 步:查询 TSV 文件

SELECT $1, $2, $3 FROM @tsv_query_stage ( FILE_FORMAT => 'tsv_query_format', PATTERN => '.*[.]tsv' );

如果 TSV 文件使用 gzip 压缩,可以使用以下查询:

SELECT $1, $2, $3 FROM @tsv_query_stage ( FILE_FORMAT => 'tsv_query_format', PATTERN => '.*[.]tsv[.]gz' );

查询时包含元信息

直接从 stage 查询 TSV 文件,并包含 METADATA$FILENAME 和 METADATA$FILE_ROW_NUMBER 等元信息列:

SELECT METADATA$FILENAME, METADATA$FILE_ROW_NUMBER, $1, $2, $3 FROM @tsv_query_stage ( FILE_FORMAT => 'tsv_query_format', PATTERN => '.*[.]tsv' );

文档内容是否有帮助?