在雪花SQL中使用变量作为阶段路径

时间:2019-10-14 12:37:21

标签: snowflake-data-warehouse

我想在运行查询时将舞台路径保留在变量中。似乎有支持将其用于表(link),但我无法使其用于舞台。支持吗?谢谢。

CREATE STAGE "MY_DB"."EXTERNAL".AZURE_BLOBS
    URL = 'azure://example.blob.core.windows.net/my-csv-container' 
    CREDENTIALS = (AZURE_SAS_TOKEN = '****');

CREATE FILE FORMAT "INSIGHT_ETL"."EXTERNAL".CSV_GZ 
    TYPE = 'CSV' 
    COMPRESSION = 'GZIP' 
    FIELD_DELIMITER = ',' 
    RECORD_DELIMITER = '\n' 
    SKIP_HEADER = 1 
    FIELD_OPTIONALLY_ENCLOSED_BY = '\042' 
    TRIM_SPACE = FALSE 
    ERROR_ON_COLUMN_COUNT_MISMATCH = TRUE 
    ESCAPE = 'NONE' 
    ESCAPE_UNENCLOSED_FIELD = '\134' 
    DATE_FORMAT = 'AUTO' 
    TIMESTAMP_FORMAT = 'AUTO' 
    NULL_IF = ('\\N');

//This works
SELECT METADATA$FILENAME, METADATA$FILE_ROW_NUMBER, A.$1
FROM '@AZURE_BLOBS/' (FILE_FORMAT  => CSV_GZ) A
limit 10;

SET StagePath = '@AZURE_BLOBS/';

//This gets a compile error
SELECT METADATA$FILENAME, METADATA$FILE_ROW_NUMBER, A.$1
FROM $StagePath (FILE_FORMAT  => CSV_GZ) A
limit 10;

1 个答案:

答案 0 :(得分:1)

如果我错了,请随时让社区纠正我,但是由于阶段路径表达式的特殊解析和处理,我不认为今天对此提供支持。

您可以在Snowflake Ideas页面上提交功能请求,以便用户可以对其进行投票。 Snowflake产品管理团队会积极监控此页面,并且在以后的发行版中,具有很多投票的功能通常会被优先考虑: https://community.snowflake.com/s/ideas