【PostgreSQL】配列に特定の文字列が含まれるかをチェックする
配列に特定の文字列が含まれるかをチェックする
配列に特定の文字列が含まれるかをチェックします。
引数
引数1(character varying[]):チェックする配列
引数2(character varying):探す文字列
返り値
True:含む、False:含まない
コード
CREATE OR REPLACE FUNCTION check_array_exists(
character varying[],
character varying)
RETURNS boolean AS
$BODY$
declare
a_array alias for $1; --引数1:チェックする配列
c_check_char alias for $2; --引数2:探す文字列
begin
for temp_count in 1..array_length(a_array,1)
loop
if a_array[temp_count] = c_check_char then
return true;
end if;
end loop;
return false;
end;
$BODY$
LANGUAGE plpgsql VOLATILE
COST 100;
ALTER FUNCTION check_array_exists(character varying[], character varying)
OWNER TO postgres;
実行例
select * from check_array_exists(array['a','b','c'],'b');
--True
他にもこんな関数があります(配列操作の関数)