跳到主要内容

查询与转换

Databend 允许直接查询暂存文件而无需先将数据加载到表中。可以从任何类型的 stage(用户、内部、外部)或直接从对象存储和 HTTPS URL 查询文件。非常适合在数据加载前后进行检查、验证和转换。

语法

SELECT [<alias>.]<column> [, <column> ...] | [<alias>.]$<col_position> [, $<col_position> ...]
FROM {@<stage_name>[/<path>] [<table_alias>] | '<uri>' [<table_alias>]}
[(
[<connection_parameters>],
[ PATTERN => '<regex_pattern>'],
[ FILE_FORMAT => 'CSV | TSV | NDJSON | PARQUET | ORC | Avro | <custom_format_name>'],
[ FILES => ( '<file_name>' [ , '<file_name>' ... ])],
[ CASE_SENSITIVE => true | false ]
)]

参数概览

控制数据访问和解析的关键参数:

参数描述
FILE_FORMAT文件格式类型 (CSV, TSV, NDJSON, PARQUET, ORC, Avro)
PATTERN用于筛选文件的正则表达式模式
FILES要查询的显式文件列表
CASE_SENSITIVE列名大小写敏感性 (Parquet)
table_alias引用暂存文件的别名
$col_position按位置选择列 (从1开始)
connection_parameters外部存储连接详情
uri远程文件的 URI

支持的文件格式

文件格式返回格式访问方法示例指南
Parquet原生数据类型直接列名SELECT id, name FROM查询 Parquet 文件
ORC原生数据类型直接列名SELECT id, name FROM查询 ORC 文件
CSV字符串值位置引用 $<position>SELECT $1, $2 FROM查询 CSV 文件
TSV字符串值位置引用 $<position>SELECT $1, $2 FROM查询 TSV 文件
NDJSONVariant 对象路径表达式 $1:<field>SELECT $1:id, $1:name FROM查询 NDJSON 文件
AvroVariant 对象路径表达式 $1:<field>SELECT $1:id, $1:name FROM查询 Avro 文件
开始使用 Databend Cloud
低成本
快速分析
多种数据源
弹性扩展
注册