如何将 CSV 文件批量加载到 Snowflake 中,并将文件名添加为列?

Posted

技术标签:

【中文标题】如何将 CSV 文件批量加载到 Snowflake 中,并将文件名添加为列?【英文标题】:How can I bulk load CSV files into Snowflake with the filename added as a column? 【发布时间】:2020-10-13 21:20:00 【问题描述】:

我可以通过内部阶段将 CSV 文件批量加载到 Snowflake 中,或者直接将数据加载到表格中。

我遇到的问题是文件名包含重要信息,必须包含在表中。

如何将 CSV 文件批量加载到 Snowflake 中,同时将文件名添加为附加列?

例如:

【问题讨论】:

【参考方案1】:

您可以为此使用元列metadata$filename,如下所示:

select metadata$filename
  , metadata$file_row_number
  , t.$1, t.$2 from @mystage1 (file_format => myformat) t;

见https://docs.snowflake.com/en/user-guide/querying-metadata.html

【讨论】:

以上是关于如何将 CSV 文件批量加载到 Snowflake 中,并将文件名添加为列?的主要内容,如果未能解决你的问题,请参考以下文章

使用 python 将 csv 文件加载到 SnowFlake 表中

将 CSV 文件从 S3 加载到 Snowflake 时出现 SQL 编译错误

将 csv 文件从云存储批量加载到 bigquery

数据摄取:将动态文件从 S3 加载到 Snowflake

Snowflake - 读取实现的架构

将 CSV 数据加载到雪花表