「PostgreSQL13」select文で一つの値を取得するファンクションのサンプル

環境
PostgreSQL 13.2

書式
CREATE OR REPLACE Function ファクション名(引数 データの型) RETURNS VARCHAR AS $$
入力として数値を渡してsql intoで値を取得します。
使用例
1.select構文で一つの値を取得するファンクションの定義

CREATE OR REPLACE Function funB(userid int) RETURNS VARCHAR
AS $$
DECLARE
  username VARCHAR(20);
BEGIN
  SELECT name INTO username FROM USERTBL
  WHERE ID = userid;
  RETURN username;
END;
$$
LANGUAGE plpgsql;

説明
(1).select intoで取得したnameを変数のusernameにセットします。
SELECT カラム名 INTO 変数名 FROM テーブル名
(2).外部から受け取った数値で条件を指定
WHERE カラム名B = 引数;

2.ファンクションを実行します。

select funB(1002);
結果
山田 太郎

 

PostgreSQL

Posted by arkgame