sql >> データベース >  >> RDS >> PostgreSQL

refcursorを使用する動的クエリの出力をテーブルに保存する

    ここでは動的リターンタイプに問題がないため、これは前の質問よりも簡単に解決できます。 EXECUTE

    新しいテーブルの場合 :

    DO
    $$
    BEGIN
    EXECUTE 'CREATE TABLE mydaughtertable AS ' || myresult('dkj_p_k27ac','enri');
    END
    $$;
    

    ここでmyresult(...) 有効なSELECTのテキストを返します ステートメント。

    既存のテーブルに追加するには :

    ...
    EXECUTE 'INSERT INTO TABLE mydaughtertable(<colum list>) '
          || myresult('dkj_p_k27ac','enri');
    ...
    

    知っている クエリの結果タイプがテーブルと一致する場合は、ターゲット列のリストを省略できます。




    1. BIGINTUNSIGNEDVALUEが範囲外ですMySQL

    2. パッケージの実行中にエラーが発生する

    3. UPDATEのFROM側は、UPDATEの対象となるテーブルとどのように関連していますか?

    4. 算術オーバーフローエラーのあるテーブルの作成