| From: | Alvaro Herrera <alvherre(at)2ndquadrant(dot)com> |
|---|---|
| To: | jvenegasperu <jvenegasperu(at)gmail(dot)com> |
| Cc: | Ayuda <pgsql-es-ayuda(at)postgresql(dot)org> |
| Subject: | Re: Seleccionar columnas por su posicion en lugar de su nombre |
| Date: | 2018-08-23 15:10:16 |
| Message-ID: | 20180823151016.ighys5eedvfeblzt@alvherre.pgsql |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-es-ayuda |
jvenegasperu escribió:
> buen dia tengo esta situacion
>
> como resultado de hacer una consulta cruzada obtengo datos como se ve en la
> imagen adjunta
>
> donde las fechas eran filas y han pasado a ser columnas.
>
> ahora el tema es que las fechas siempre van a ser variables mes a mes mi
> pregunta es si existe forma de seleccionar las columnas por su posicion en
> lugar de su nombre algo como cambiar
>
> select nombre1,nombre2 from tabla;
>
> por algo quiza como
>
> select columnid(1), columnid(2) from tabla/vista;
>
> como podria lograr algo asi seleccionar por la posicion de la columan en
> lugar de su nombre es que no se como se llamara la columna por que es el
> resultado de la columna cruzada
Una opción es hacer "case ciclo_facturacion when 1 then col1 when 2
then col2 ... end" pero para eso necesitas saber el nombre de la
columna.
¿no sería más fácil no convertir la consulta a "cruzada" y en vez de eso
traer aquellos registros que tengan NOT NULL en tal columna? No parece
que el nombre de la columna te vaya a servir de nada.
--
Álvaro Herrera https://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services
| From | Date | Subject | |
|---|---|---|---|
| Next Message | jvenegasperu | 2018-08-23 17:01:39 | Re: Seleccionar columnas por su posicion en lugar de su nombre |
| Previous Message | Gerardo Herzig - Redes FMED | 2018-08-23 15:06:21 | Re: Seleccionar columnas por su posicion en lugar de su nombre |