雪花-COPY INTO ...忽略DATE_INPUT_FORMAT设置

时间:2020-07-16 16:50:55

标签: snowflake-cloud-data-platform

以下说明旨在使用特定格式导入DATE

alter session set DATE_INPUT_FORMAT = 'YYYY-MM-DD HH24:MI:SS.FF';

但是,它似乎对以下各项没有影响:

copy into schema.table
    from s3://bucket/file.parquet
    credentials=(aws_key_id='...' aws_secret_key='...')
    match_by_column_name=case_insensitive
    file_format=(type=parquet);

这将导致如下错误:

sqlalchemy.exc.ProgrammingError: (snowflake.connector.errors.ProgrammingError) 100071 (22000):
Failed to cast variant value "2020-06-16 00:00:00.000" to DATE

当导入的Parquet文件中的列具有上面为日期字段指定的格式时。

这听起来像是个错误,因为从理论上讲,以上COPY INTO场景应该是更改DATE_INPUT_FORMAT的典型用例。

有没有办法解决这个问题?

1 个答案:

答案 0 :(得分:1)

DATE_INPUT_FORMAT应该会影响复制命令。该文档讨论了在日期转换中不支持来自变体列的时间戳。

尽管TO_DATE接受TIMESTAMP值,但不接受VARIANT内部的TIMESTAMP。