Cargar archivo JSON en PostgreSQL

Como se conoce PostgreSQL permite el almacenamiento de datos en formato JSON a través de los tipos de datos JSON y JSONB, además hemos comentado en otras publicaciones las ventajas de JSONB sobre JSON, en este caso de hoy mostraremos como cargar un archivo JSON a un campo de una tabla de PostgreSQL de una manera sencilla solo utilizado comandos de PostgreSQL , para eso utilizaremos un archivo de ejemplo del sitio  https://github.com/ozlerhakan/mongodb-json-files/tree/master/datasets en el cual seleccionamos el de students, que  tienes los datos de de estudiantes Sigue leyendo

JSONB un JSON superior en PostgreSQL

Hace unos días me puse a trabajar con el tipo de dato JSONB de PostgreSQL, nuevo desde la versión 9.4, el mismo me ha resultado fantástico y superior a su primo JSON presente en PostgreSQL desde la versión 9.2, muestra evidente de la evolución del gestor hacia funcionalidades y características cada vez mejor, y al nivel de los requerimientos de la actualidad.

Comencemos con algunas pruebas para ver las ventajas de este nuevo tipo de dato:

Creamos dos tablas similares, solo cambia el tipo de dato:


create table tablajson (atributo JSON);
create table tablajsonb (atributo JSONB);

Se insertaron un total de 100000 tuplas.

INSERT INTO tablajsonb

SELECT row_to_json(consulta)::JSONB FROM (SELECT 'Nombre'||round((random() * 100)::numeric,0)::text||' Apellido'||round((random() * 100)::numeric,0)::text as nombre_apellidos,

round((random() * 100)::numeric,0) as edad,round((random() * 9)::numeric ,2)as porciento FROM generate_series(1,100000) ) consulta;

INSERT INTO tablajson

SELECT row_to_json(consulta)::json FROM (SELECT 'Nombre'||round((random() * 100)::numeric,0)::text||' Apellido'||round((random() * 100)::numeric,0)::text as nombre_apellidos,

round((random() * 100)::numeric,0) as edad,round((random() * 9)::numeric ,2)as porciento FROM generate_series(1,100000) ) consulta;

Soporte de operadores

Sigue leyendo