首页 > 解决方案 > 如何使用 s3 阶段集成将数据插入雪花

问题描述

如何使用 s3 阶段集成将数据插入雪花

在 aws 和 snowfalke 之间创建存储集成。

在 s3 和雪花之间创建阶段集成。

标签: amazon-web-servicessnowflake-cloud-data-platform

解决方案


USE DATABASE Database_name;
USE SCHEMA scema_name;
truncate table table_name_tmp;
COPY INTO table_name_tmp FROM
(
SELECT $1:emp_id::INTEGER,$1:col2::DATE,$1:col3::string
  FROM @Stagename.schema_name.{0}/{1}
)
on_error = 'continue'
file_format = (type = parquet, null_if = ('NULL'), trim_space = true);


MERGE INTO table_name dst USING table_name_tmp srs
    ON (dst.emp_id=srs.emp_id)
    WHEN MATCHED THEN
        UPDATE SET
        dst.emp_id=srs.emp_id,dst.col2=srs.col2,dst.col3=srs.col3
        
         WHEN NOT MATCHED THEN INSERT (emp_id,col2,col3 )
         values
         (srs.emp_id,srs.col2,srs.col3
);
truncate table table_name_tmp;

推荐阅读