Guillermo E. Villanueva escribió: > Buenos días! > > Retomando este viejo tema planteado hace un tiempo, les comento que > Postgres me duvelve diferente nombre de columna para una misma función, > pasando de una versión 9.0.5 a 9.0.13. > Creo que Alvaro H me lo explicó pero no puedo encontrar su rta. > Me gustaría entender porque Postgres devuelve diferentes nombres de columna > para esta función en concreto: > CREATE OR REPLACE FUNCTION nacer.periodos() > RETURNS SETOF timestamp without time zone AS > $BODY$ > declare > lts_minimo timestamp; > lts_maximo timestamp; > begin > select max(periodo), min(periodo) into lts_maximo, lts_minimo from > nacer.historicotemp; > RETURN QUERY select * from generate_series(lts_minimo, lts_maximo, '1 > month'::interval); > end; > $BODY$ > LANGUAGE plpgsql > > En ambos casos testeo la función con la sentencia: > select * from nacer.periodos() > > En la versión 9.0.5 la columna devuelta se llama per_fecha. Todavía no > logro entender de donde lo saca al nombre. > En la versión 9.0.13 la columna devuelta se llama periodos.
Yo creo que estás invocando funciones distintas en cada caso. ¿No será que una tiene un parámetro y la otra no, o algo así? El nombre "periodos" que te devuelve en el segundo caso es (muy probablemente) tomado del nombre de la función; pero el per_fecha no tiene de dónde salir. -- Álvaro Herrera http://www.2ndQuadrant.com/ PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services - Enviado a la lista de correo pgsql-es-ayuda (pgsql-es-ayuda@postgresql.org) Para cambiar tu suscripción: http://www.postgresql.org/mailpref/pgsql-es-ayuda