PostgreSQL: Convert records to json string and revert to records


Mon Aug 29 2022 15:45:43 GMT+0000 (Coordinated Universal Time)

Saved by @marcopinero #sql

select * from json_to_recordset( (
  select array_to_json(array_agg(row_to_json(t)))
    from (
      select field1, field2, field3,... from mytable
    ) t
)) as x(
  "field1" integer,
  "field2" integer,
  "field3" text,

--- ejemplo de texto json a recordset:
select * from json_to_recordset((select detalles from d_factura_caja where id=4216)::json) as x(
  "seq" integer,
  "padre" integer,
  "tipo" text,
  "idx" integer,
  "nivel" integer,
  "descripcion" text,
  "cantidad" numeric(6,2),
  "presentacion" text,
  "precio_unitario" numeric(15,2),
  "precio" numeric(15,2),
  "porc_impuesto" numeric(6,2),
  "impuesto" numeric,

Se convierte una cantidad de registros a un string json (array) (se pueden guardar en un campo text) Y se puede reconvertir en registros con json_to_recordset.