スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

PL/pgSQLで戻り値にテーブルの代わりに型を使う

以前PL/pgSQLで戻り値でテーブルを使う時の注意点でPL/pgSQLの戻り値としてtableを使う話を書きましたが、そこで書いた参照用のテーブルを使うという方法よりも型を使った方が自然なことに気がつきました。

CREATE TYPE type_user AS (
user_name TEXT
);

CREATE OR REPLACE FUNCTION sample1(
) RETURNS SETOF type_user AS $$
DECLARE
BEGIN
RETURN QUERY SELECT
user_name
FROM
t_user
;
END;
$$ LANGUAGE plpgsql;

CREATE OR REPLACE FUNCTION sample2(
) RETURNS SETOF type_user AS $$
DECLARE
BEGIN
RETURN QUERY SELECT
user_name || 'postfix'
FROM
sample1()
;
END;
$$ LANGUAGE plpgsql;
スポンサーサイト

COMMENTS

COMMENT FORM

TRACKBACK


この記事にトラックバックする(FC2ブログユーザー)

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。