首页 > 解决方案 > 从 AWS S3 Parquet 文件复制数据 - 仅限于几行

问题描述

(代表雪花用户提交 - 搜索任何可用的建议......)

在从 AWS S3 Parquet 文件复制数据时,我希望根据 where 条件仅选择几行以复制到 Snowflake。我查看了以下链接(了解复制转换应该允许我在从暂存文件中选择数据时添加过滤子句):

https://docs.snowflake.net/manuals/user-guide/script-data-load-transform-parquet.html

但是,从我看到的示例中,它有助于选择几列而不是几行。我希望根据要加载的条件过滤行。


以前曾建议可以通过应用“Where”子句以相同的方式应用过滤器,但这似乎不是适合用户的解决方案。

有什么建议吗?

标签: sqlsnowflake-cloud-data-platform

解决方案


Copy 语句仅支持没有 where 子句的简单 select 语句。在加载期间过滤行的唯一选项是使用限制和偏移值。

create or replace file format sf_tut_parquet_format type = 'parquet';
create or replace stage sf_tut_stage1 file_format = sf_tut_parquet_format;
create or replace table prqnull1(data variant);
copy into prqnull1 (data) from (select * from @sf_tut_stage1 limit 3 offset 2);

该表包含使用以下数据构建的镶木地板数据。

cutoff_date,name
20081123, Ann
20080913, Beck
20100315, Carren
20110817, Dave
20161219, Emily

推荐阅读