Hola amigos. Buen día... me encuentro en una situación en la que pido su apoyo... ya he indagado en la web y no he encontrado información al respecto...
He creado una función en la cual necesito recibir los registros de una tabla (incluso a través de una tabla temporal)... en la definición lo tengo de la siguiente forma... CREATE OR REPLACE FUNCTION promedio(IN tablavalores public.valores, simulador boolean) RETURNS double precision[] AS $BODY$ DECLARE promedio DOUBLE PRECISION; contador INTEGER; registro RECORD; BEGIN promedio = 0.00; FOR registro IN SELECT valor FROM tablavalores; LOOP contador = contador + 1; promedio = promedio + registro.valor; END LOOP; promedio = promedio / contador; return promedio; END; $BODY$ LANGUAGE plpgsql VOLATILE COST 100; ALTER FUNCTION promedio(public.valores, boolean) OWNER TO postgres; Al intentar invocarlo hago lo siguiente... create temp table v (like public.valores); select promedio(v, true); y este ultimo me manda un error en el que dice que "v" (la tabla temporal) no es una columna... recurro a su experiencia para saber si mi error es al invocar o al declarar la función... Agradezco de antemano sus comentarios. Atte. Mario Jiménez Carrasco.