Cuando apareció el tipo JSON en MySQL, muchos empezamos a usarlo simplemente para guardar documentos. Y, en muchos proyectos, sigue siendo eso: una columna donde se almacena un JSON para luego parsearlo desde Java, C# o cualquier otro lenguaje.
Pero desde MySQL 8, el soporte para JSON es muchísimo más potente.
La base de datos no solo puede almacenar documentos; también puede consultarlos, transformarlos, agregarlos e incluso convertirlos en tablas relacionales.
Por ejemplo, crear un objeto JSON es tan simple como:
SELECT JSON_OBJECT(
'id', id,
'name', name,
'age', age
)
FROM customer;
Y también podemos generar un arreglo JSON a partir de varias filas:
SELECT JSON_ARRAYAGG(name)
FROM customer;
Estas son funciones relativamente conocidas, pero apenas rascan la superficie.
Una de las características más interesantes de MySQL 8 es JSON_TABLE(), que permite tratar un documento JSON como si fuera una tabla relacional y consultarlo con SQL.
Eso significa que, en muchos casos, ya no hace falta traer el documento completo a la aplicación para procesarlo.
La mayoría de las funciones JSON de MySQL permiten leer o modificar un documento. JSON_TABLE() va un paso más allá: convierte un documento JSON en una tabla relacional que puede consultarse con SQL.

No hay comentarios.:
Publicar un comentario