37 lines
616 B
PL/PgSQL
Executable File
37 lines
616 B
PL/PgSQL
Executable File
-- # $Id$
|
|
-- # $HeadURL$
|
|
-- # $Author$
|
|
|
|
CREATE OR REPLACE FUNCTION public.reduce_dim1(anyarray)
|
|
RETURNS SETOF int AS
|
|
$function$
|
|
DECLARE
|
|
s $1%TYPE;
|
|
BEGIN
|
|
IF cardinality($1) > 0 THEN
|
|
FOREACH s SLICE 1 IN ARRAY $1 LOOP
|
|
RETURN NEXT s[1];
|
|
END LOOP;
|
|
END IF;
|
|
RETURN;
|
|
END;
|
|
$function$
|
|
LANGUAGE plpgsql IMMUTABLE;
|
|
|
|
|
|
CREATE OR REPLACE FUNCTION public.reduce_dim2(anyarray)
|
|
RETURNS SETOF int AS
|
|
$function$
|
|
DECLARE
|
|
s $1%TYPE;
|
|
BEGIN
|
|
IF cardinality($1) > 0 THEN
|
|
FOREACH s SLICE 1 IN ARRAY $1 LOOP
|
|
RETURN NEXT s[2];
|
|
END LOOP;
|
|
END IF;
|
|
RETURN;
|
|
END;
|
|
$function$
|
|
LANGUAGE plpgsql IMMUTABLE;
|