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

postgresql関数で一時テーブルの結果を返す方法

    main_function()内:

    RETURN QUERY SELECT * FROM temp_t;
    

    ...temp_tテーブルが次の要素で構成されている場合column1(整数型)、column2(ブール値)、column3(varchar(100))の場合、返される型も次のように定義する必要があります。

    CREATE OR REPLACE FUNCTION main_function(column1 OUT integer, column2 OUT boolean, column3 OUT varchar(100)) RETURNS SETOF record AS
    (...)
    

    別の方法は、新しいデータ型を定義することです:

    CREATE TYPE temp_t_type AS (
        column1 integer,
        column2 boolean,
        column3 varchar(100)
    );
    

    この型は、通常のデータ型と同じ方法で関数から返すことができます。

    CREATE OR REPLACE FUNCTION main_function() RETURNS SETOF temp_t_type AS
    (...)
    

    ...そして、上記と同じ方法で関数から結果を返します。



    1. SQLServerデータベースの増大に応じてデータ収集を自動化する方法

    2. MYSQLで2点間の距離を見つけます。 (ポイントデータ型を使用)

    3. WHERE句のSelect式からサブクエリを再利用する

    4. MySQL文字列からDATE/TIMEまたはTIMESTAMPへ