「PL/pgSQLとは?」で簡単なPL/pgSQLを実行してみました。
このサンプルをもとに記述構造について以下に記します。
当サイトに記載されている会社名、製品名などは一般に各社または団体の商標または登録商標です。
当サイトの資料により直接的および間接的障害が生じても一切責任を負いませんので、あらかじめご了承ください。
自己責任のもとで本資料をご利用ください。
PL/pgSQLの構造についての詳細は、PostgreSQLサイトにあるドキュメントを参照してください。
www.postgresql.jpへのリンク
以下にPL/pgSQLの構造を記します。
CREATE FUNCTION ファンクション名() RETURNS 返却する変数の型 AS $$
DECLARE
変数などを宣言
BEGIN
処理を記述
以下のように副ブロックも記述可能
DECLARE
変数などの定義
BEGIN
処理を記述
END;
処理を記述
RETURN 返却値;
END;
$$ LANGUAGE plpgsql;
上記にPL/pgSQLの記述構造を簡単に記しました。
「PL/pgSQLとは?」で公開している、helloworld.sqlを説明してみます。
CREATE OR REPLACE FUNCTION helloworld()
RETURNS
TEXT
AS $$
DECLARE
msg text := 'Hello world!';
BEGIN
RAISE INFO '%', msg;
RETURN msg;
END
$$ LANGUAGE plpgsql
;