関数・PL/pgSQL の使い方

処理に名前をつけて再利用

書き方

CREATE FUNCTION 名前(引数 型) RETURNS 型 LANGUAGE sql AS $$ … $$;
CREATE FUNCTION … LANGUAGE plpgsql AS $$ DECLARE … BEGIN … END $$;
DO $$ BEGIN RAISE NOTICE '%', 値; END $$;

PL/pgSQL では変数・IF・ループが使えます。$$ … $$ の中に本体を書きます。

例

CREATE FUNCTION tax(p NUMERIC) RETURNS NUMERIC LANGUAGE sql AS $$ SELECT ROUND(p * 1.1) $$;

実際に打って練習する

PostgreSQL コースの Lv27「PL/pgSQL で関数を作る」で覚えます。ブラウザの中のシミュレーターで、本物と同じように打って確かめられます。

Lv1〜2 はログインすると無料で試せます(それより先はゴールド以上のプランで遊べます)。

PostgreSQL の構文一覧(psql・JSONB・PL/pgSQL)へ戻る