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, "neto"numeric )