El 10/10/13 16:45, William Diaz Pabón escribió:
Muchas gracias Martin.

Efectivamente lo pude solucionar.

Ahora quiero que en los títulos de las columnas salgan los valores de la
columna accesorio del ejemplo arriba. Algo así:

  row_name | 201| 202| 203| 204
----------+------------+------__------+------------+----------__--
  85232    |   52500.00 |    9300.00 |  136278.21 |   25364.58

Como puedo hacer eso?

Mi exteriencia con crosstab es escasa, pero tengo entendido que no se puede hacer eso de manera dinámica (o automática). Si Sabes los valores que se van a retornar podes hacer algo como esto

postgres=# SELECT *
FROM crosstab('
select deuda_predio
       ,accesorio
       ,valor
from ct
order by 1, 2
')
AS ct(predio character varying(30), "201" numeric, "202" numeric, "203" numeric, "204" numeric);
 predio |   201    |  202   |   203   |    204
--------+----------+--------+---------+-----------
 8522   |   364.58 |        |         |
 85232  | 52500.00 | 364.58 | 9300.00 | 136278.21

Si hay otra forma de generar dicha consulta, lo desconozco.

--
Martín Marqués                http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Training & Services

-
Enviado a la lista de correo pgsql-es-ayuda ([email protected])
Para cambiar tu suscripción:
http://www.postgresql.org/mailpref/pgsql-es-ayuda

Responder a