AWS Redshift プロシージャ select intoで値を取得する

環境
AWS Redshift

概要
1.プロシージャ名
CREATE OR REPLACE PROCEDURE プロシージャ名(引数 データの型)
2.変数名にセット
select カラム名 into 変数名1 from テーブル名
3.プロシージャを実行する
call プロシージャ名(値)

操作例
入力として数値を渡してsql intoで値を取得します。
サンプルコード

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
CREATE OR REPLACE PROCEDURE funA(uid int)
AS $$
DECLARE
strA VARCHAR(20);
BEGIN
select firstname into strA from users
where userid = uid;
RAISE INFO 'msg:%', strA; --'msg:yamada
END;
$$
LANGUAGE plpgsql;
CREATE OR REPLACE PROCEDURE funA(uid int) AS $$ DECLARE strA VARCHAR(20); BEGIN select firstname into strA from users where userid = uid; RAISE INFO 'msg:%', strA; --'msg:yamada END; $$ LANGUAGE plpgsql;
CREATE OR REPLACE PROCEDURE funA(uid int) 
AS $$
DECLARE
  strA VARCHAR(20);
BEGIN
  select firstname into strA from users
  where userid = uid;
  RAISE INFO 'msg:%', strA; --'msg:yamada
END;
$$
LANGUAGE plpgsql;

実行結果
プロシージャを実行する
call funA(11)

AWS

Posted by arkgame