创建field函数
-- FUNCTION: field(anyelement, anyarray)
-- DROP FUNCTION IF EXISTS field(anyelement, anyarray);
CREATE OR REPLACE FUNCTION field(
search_value anyelement,
VARIADIC fields anyarray)
RETURNS integer
LANGUAGE 'plpgsql'
COST 100
VOLATILE PARALLEL UNSAFE
AS $BODY$
DECLARE
index_value integer;
BEGIN
FOR index_value IN 1..array_length(fields, 1) LOOP
IF fields[index_value] = search_value THEN
RETURN index_value;
END IF;
END LOOP;
RETURN 0;
END;
$BODY$;
ALTER FUNCTION field(anyelement, anyarray)
OWNER TO postgres;
select field('6',1,2,3,4,5,'2',6);