如何在ClickHouse中正确使用file表函数搭配Template格式
ClickHouse file表函数Template格式查询报错解决方法
错误根因
- 语法错误的核心是
file()表函数的参数顺序不符合规范,且格式相关SETTINGS配置错误放置在了file()函数的参数列表内 file()表函数的标准参数顺序为:file(文件路径, 数据格式, 表结构定义),你原先的写法将SETTINGS配置插在了格式参数和表结构参数之间,触发语法校验失败
正确实现SQL
SELECT * FROM file('data', Template, 'a String, b Int32') SETTINGS format_template_resultset = '/home/resultset.format', format_template_row = '/home/row.format', format_template_rows_between_delimiter = '\n';
补充说明
Template格式对应的SETTINGS配置属于整个查询的全局配置,和你之前直接查询Memory表导出Template格式数据时的SETTINGS放置逻辑一致,统一放在整条SQL语句末尾即可生效。
内容的提问来源于stack exchange,提问作者goodchinas
相关产品推荐
相关产品推荐

