All pastes #470696 Raw Edit

Untitled

public text v1 · immutable
·published 2007-05-04 12:55 UTC
rendered paste body
CREATE OR REPLACE FUNCTION parent_paths (path ltree) RETURNS SETOF ltree AS $$
DECLARE
	i INTEGER;
	level INTEGER;
	mySubpath ltree;
BEGIN

	SELECT nlevel (path) INTO level;

	FOR i IN 1 .. level LOOP
		SELECT subpath(path, 0, i) INTO mySubpath;
		
		RETURN NEXT mySubpath;
	END LOOP;
	
	RETURN;
END;
$$ LANGUAGE plpgsql IMMUTABLE;
$$ LANGUAGE plpgsql WITH (ISCACHABLE);