Quantcast
Channel: プログラミング
Viewing all articles
Browse latest Browse all 7930

【PostgreSQL】ストアド ~ SELECT INTO ~ - プログラム の超個人的なメモ

$
0
0

■ はじめに

 今回は、Redshiftの ストアド プロシージャ (Stored Procedure) を
解析しなくてはならなくなり、色々と知らんことがあったのでメモしておく
(Redshiftだと手元で弄れないので、代わりにPostgreSQLを使った)

SQL Fiddle
https://www.db-fiddle.com/

目次

【1】SELECT INTO
【2】サンプル
 例1:Hello world
【3】Tips
 1)デバッグログ - raise info -

【1】SELECT INTO

SELECT [値] INTO [変数名] FROM [テーブル];

【2】サンプル

例1:Hello world

-- 結果格納用テーブルCREATETABLE demo_result(result VARCHAR(100));

-- ストアドプロシージャCREATEORREPLACEPROCEDURE demo_cedure()
  LANGUAGE plpgsql
AS $$
DECLARE
  result VARCHAR(100);
BEGIN-- ★注目★SELECT'Hello world!!'INTO result;
  -- 後述「1)デバッグログ - raise info -」参照
  RAISE INFO 'Result: %', result;
  -- 値を入れるINSERTINTO demo_result VALUES (result);
END
$$

-- 
CALL demo_cedure();

-- 結果表示SELECT * FROM demo_result;
result
Hello world!!

【3】Tips

1)デバッグログ - raise info -

https://www.db-fiddle.com/

だと残念ながら使えないが、pgadmin とかだと
「raise info」が使える

-- %部分に変数の値が表示される
RAISE INFO 'Result: %', result;

関連記事

ストアド ~ 基礎知識編 ~
https://dk521123.hatenablog.com/entry/2010/08/06/112528
ストアド ~ 基本編 / 変数 ~
https://dk521123.hatenablog.com/entry/2013/01/25/002936
ストアド ~ 基本編 / 繰り返し処理 ~
https://dk521123.hatenablog.com/entry/2012/06/22/213026
PostgreSQL】ストアド ~ 入門編 ~
https://dk521123.hatenablog.com/entry/2014/04/21/000100


Viewing all articles
Browse latest Browse all 7930

Trending Articles