代码之家  ›  专栏  ›  技术社区  ›  rodrigocf

Redshift中使用字符串替换和卸载的存储过程

  •  0
  • rodrigocf  · 技术社区  · 4 年前

    我想在以下几点上有所成就:

    create or replace procedure my_sp_name(p_date date) as
    $$
    begin
        unload ('
        select *
        from my_table
        where my_date = ''DATE_GOES_HERE''
        ')
            to 's3://my-bucket/some_key/DATE_GOES_HERE/some_file'
            iam_role 'my_iam_role'
            allowoverwrite csv parallel off;
    end ;
    $$
        language plpgsql;
    

    我一直在尝试不同的事情,然而,似乎找不到在卸载的两个部分中进行字符串替换的正确方法。正确的方法是什么?

    0 回复  |  直到 4 年前
        1
  •  0
  •   Bill Weiner    4 年前

    您需要在过程中执行“SQL语句”。看见 https://docs.aws.amazon.com/redshift/latest/dg/c_PLpgSQL-statements.html 在“动态SQL”部分。

    推荐文章