【发布时间】:2020-07-07 08:11:51
【问题描述】:
我创建了以下内容:
- 外部阶段(指向 Data Lake Gen2 中的文件夹)
- 文件格式(拼花)
我想从一个阶段进行选择,但我只想读取那些文件名中包含 .part. 的文件。使用 copy into 命令我可以在模式中提到这一点,但我不想在表中复制数据。我只想选择 .part. 文件。目前我已经尝试过:
SELECT
$1:Country::String as Country,
$1:FeatureStr::String as FeatureStr,
$1:Machineid::String as Machineid,
$1:ProductId::number as ProductId
FROM @DB.RAW_SCHEMA.FEATURE_STAGE/ClientDetails/2020.03.ClientDetails/ (file_format => DB.RAW_SCHEMA.PARQUET_FORMAT);
但它也会查找其中没有“part”的文件,因此它会失败。于是我尝试了模式功能:
SELECT
$1:Country::String as Country,
$1:FeatureStr::String as FeatureStr,
$1:Machineid::String as Machineid,
$1:ProductId::number as ProductId
FROM @DB.RAW_SCHEMA.FEATURE_STAGE/ClientDetails/2020.03.ClientDetails/ (file_format => DB.RAW_SCHEMA.PARQUET_FORMAT)
pattern => '.*part.*';
但它给了我语法错误。任何指导将不胜感激。 :)
【问题讨论】:
标签: sql regex select snowflake-cloud-data-platform snowflake-schema