From: | Martín Carrera <martincarrera(at)micam(dot)com(dot)ar> |
---|---|
To: | <pgsql-es-ayuda(at)postgresql(dot)org> |
Subject: | Select sin AS |
Date: | 2004-07-02 22:42:13 |
Message-ID: | 000201c4608a$bad4fb50$0100a8c0@tinchium |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
Hola que tal...mi problema es el siguiente:
Creo una Función en la cual realizo un select de varias tablas :
CREATE OR REPLACE FUNCTION miFuncion()
RETURNS SETOF RECORD AS '
select nombre from tabla, paises, provincias......
inner join...
on...........
where........
'
LANGUAGE 'sql' VOLATILE;
Ejecuto la función
Select * from miFuncion() as (nombre varchar)
Resultado: | Fila | nombre (varchar) |
| 1 | Martín |
| 2 | Lucas |
Hasta ahora todo excelente, pero...
Cada vez que cambio algo en la función miFuncion() ( por ejemplo: agregar una columna nueva en el select: 'select nombre, columna_nueva from tabla, paises....' )
deberé cambiar la forma de ejecutar dicha función: Select * from miFuncion() as (nombre varchar, columna_nueva varchar) y en todos
los lugares en donde la ejecuto. Es un trabajo bastante laborioso no?
Necesito hacer directamente un:
Select * from miFuncion()
y que me devuelva la totalidad de las columnas que incluyo en el select de la función. Osea, que me devuelva nombre y columna_nueva sin incluir el As.
Al ejecutar el select sin el as, me da el error: "A column definition list is required for functions returning RECORD".
Espero que puedan ayudarme.
Mil Gracias.
From | Date | Subject | |
---|---|---|---|
Next Message | tgutierrez | 2004-07-02 23:00:40 | Re: configurar tcp-ip postgres 7.4 |
Previous Message | Tincho Carrera | 2004-07-02 22:41:46 | Select sin AS |