En MySQL 5.7 se ha agregado un nuevo tipo de datos para almacenar datos JSON en tablas MySQL . Obviamente, será un gran cambio en MySQL. Enumeraron algunos beneficios
Validación de documentos : solo se pueden almacenar documentos JSON válidos en una columna JSON, por lo que obtiene la validación automática de sus datos.
Acceso eficiente : lo que es más importante, cuando almacena un documento JSON en una columna JSON, no se almacena como un valor de texto sin formato. En cambio, se almacena en un formato binario optimizado que permite un acceso más rápido a los miembros del objeto y los elementos de la matriz.
Rendimiento : mejore el rendimiento de su consulta creando índices sobre valores dentro de las columnas JSON. Esto se puede lograr con "índices funcionales" en columnas virtuales.
Conveniencia : la sintaxis en línea adicional para columnas JSON hace que sea muy natural integrar las consultas de documentos en su SQL. Por ejemplo (features.feature es una columna JSON):
SELECT feature->"$.properties.STREET" AS property_street FROM features WHERE id = 121254;
GUAUU ! incluyen algunas características excelentes. Ahora es más fácil manipular los datos. Ahora es posible almacenar datos más complejos en columna. Entonces MySQL ahora tiene sabor a NoSQL.
Ahora puedo imaginar una consulta para datos JSON algo como
SELECT * FROM t1
WHERE JSON_EXTRACT(data,"$.series") IN
(
SELECT JSON_EXTRACT(data,"$.inverted")
FROM t1 | {"series": 3, "inverted": 8}
WHERE JSON_EXTRACT(data,"$.inverted")<4 );
Entonces, ¿puedo almacenar grandes relaciones pequeñas en pocas columnas json? ¿Esta bien? ¿Rompe la normalización? Si esto es posible, supongo que actuará como NoSQL en una columna MySQL . Realmente quiero saber más sobre esta función. Pros y contras del tipo de datos MySQL JSON.
Now it is possible to store more complex data in column
. Tenga cuidado