これは次のように機能します:
CREATE OR REPLACE FUNCTION name_function(param_1 varchar
, OUT param_2 bigint)
LANGUAGE plpgsql AS
$func$
BEGIN
INSERT INTO table (collumn_seq, param_1) -- "param_1" also the column name?
VALUES (DEFAULT, param_1)
RETURNING collumn_seq
INTO param2;
END
$func$;
通常、RETURN
を追加します ステートメントですが、OUT
パラメータ、これはオプションです。
詳細については、マニュアルを参照してください:
- 関数から戻る
- 単一行の結果でクエリを実行する
単純なケースは、単純なSQL関数でカバーできます。
そして、DEFAULT
を取得するターゲット列を省略できます。 値。
そして、RETURNS
を使用することもできます この場合の句:
CREATE OR REPLACE FUNCTION name_function(param_1 varchar)
RETURNS bigint
LANGUAGE sql AS
$func$
INSERT INTO table (param_1) -- "param_1" also the column name?
VALUES (param_1)
RETURNING collumn_seq;
$func$;