PL/pgSQL で関数を作成しています。行が存在するかどうかを確認する最も簡単な方法を探しています。
現在、 aninteger
を aboolean
に SELECT していますが、実際には機能しません。私はPL/pgSQLの経験が十分ではなく、これを行う最善の方法をまだ知りません。
これが私の機能の一部です:
DECLARE person_exists boolean;
BEGIN
person_exists := FALSE;
SELECT "person_id" INTO person_exists
FROM "people" p
WHERE p.person_id = my_person_id
LIMIT 1;
IF person_exists THEN
-- Do something
END IF;
END; $$ LANGUAGE plpgsql;
更新- 私は今のところこのようなことをしています:
DECLARE person_exists integer;
BEGIN
person_exists := 0;
SELECT count("person_id") INTO person_exists
FROM "people" p
WHERE p.person_id = my_person_id
LIMIT 1;
IF person_exists < 1 THEN
-- Do something
END IF;