重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

電子書籍の厳選無料作品が豊富!

PgSQLで関数を作成したいのですが、記述方法がわかりません。
結果がbool trueならint 1
結果がbool falseならint 0
を返すようなものを作りたいのですが、どのように記述すれば良いのでしょうか。

CREATE FUNCTION BOOL2INT(boolean)
RETURNS integer
このあとの記述が複雑でわかりません

A 回答 (1件)

実質、丸投げじゃないですか!



>このあとの記述が複雑でわかりません

この程度の関数で複雑というなら、自分で関数を作るのは無理なのでは?

と言いつつ、関数の作成例を、以下に示します。
もっと簡略化もできるのですが、逆に分かりにくくなるので、あえてこれ以上、簡略化しません。

1.定義
create or replace function bool2int
(pBool bool)
returns int as $$
declare
vInt int;
begin
if pBool=true then vInt:=1;
elseif pBool=false then vInt:=0;
else vInt:=null;
end if;
return vInt;
end;
$$ language 'plpgsql'
;

2.実行
select bool2int(true),bool2int(false),bool2int(null);
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

関連するカテゴリからQ&Aを探す