Re: [pgsql-es-ayuda] Como iterar sobre columnas de un row

From: Álvaro Hernández Tortosa <aht(at)Nosys(dot)es>
To: Jaime Casanova <jaime(at)2ndquadrant(dot)com>
Cc: Milton Labanda <1000ton(dot)lab(at)gmail(dot)com>, Foros Postgre Ecuador <ecpug(at)postgresql(dot)org>, POSTGRES <pgsql-es-ayuda(at)postgresql(dot)org>
Subject: Re: [pgsql-es-ayuda] Como iterar sobre columnas de un row
Date: 2011-06-09 17:27:24
Message-ID: 20110609172724.GH12026@nosys.net
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: ecpug pgsql-es-ayuda

Thu, Jun 09, 2011 at 11:47:19AM -0500, Jaime Casanova escribió:

>2011/6/9 Milton Labanda <1000ton(dot)lab(at)gmail(dot)com>:
>> Alguien lo ha hecho en una funcion trigger:
>> es que quiero pasar toda la fila que se está actualizando a digamos
>> un formato como JSON o YAML y entonces necestio sacar los nombres de
>> las columnas y sus valores respectivos.
>>
>
>tiene que ser en un trigger?
>
>no se como hacer (o si se puede) que un record se comporte como una
>tabla para extraer los campos con un select pero puedes usar una de
>estas directamente de la tabla o de un select:
>http://www.postgresql.org/docs/9.0/static/functions-xml.html#FUNCTIONS-XML-MAPPING
>

Se me ocurre hacer una consulta que mire en pg_attribute los
nombres de las columnas. A partir de ahí puedes hacer consultas
dinámicas (EXECUTE .. INTO) para cada columna y ya entonces generar la
cadena que quieras. Tal vez sea un poco ineficiente (una consulta por
cada fila y por cada columna), pero si no te importa esto es sencillo y
fácil :)

Saludos,

Álvaro

--

Álvaro Hernández Tortosa

-----------
NOSYS
Networked Open SYStems

In response to

Responses

Browse ecpug by date

  From Date Subject
Next Message Jaime Casanova 2011-06-09 17:56:06 Re: [pgsql-es-ayuda] Como iterar sobre columnas de un row
Previous Message Jaime Casanova 2011-06-09 16:47:19 Re: Como iterar sobre columnas de un row

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Lazaro Rubén García Martinez 2011-06-09 17:40:13 Insertar imagenes en la BD
Previous Message Jaime Casanova 2011-06-09 16:47:19 Re: Como iterar sobre columnas de un row