"Si un trabajador quiere hacer bien su trabajo, primero debe afilar sus herramientas." - Confucio, "Las Analectas de Confucio. Lu Linggong"
Página delantera > Programación > ¿Cómo almacenar y recuperar datos JSON de forma eficiente en tablas MySQL?

¿Cómo almacenar y recuperar datos JSON de forma eficiente en tablas MySQL?

Publicado el 2024-11-13
Navegar:716

How to Efficiently Store and Retrieve JSON Data in MySQL Tables?

Creación e inserción de objetos JSON en tablas MySQL

Al trabajar con datos JSON en MySQL, puede encontrar desafíos si no está familiarizado con el proceso. Aquí tienes una guía paso a paso para ayudarte.

Creación de una tabla con tipo de datos JSON

Para almacenar datos JSON de forma eficaz, necesitarás definir tu columnas de la tabla con el tipo de datos JSON. Por ejemplo:

CREATE TABLE `person` (
  `name` JSON DEFAULT NULL
);

Insertar datos JSON

Hay varias formas de insertar datos JSON en su tabla MySQL:

1. Insertar matrices JSON

Para insertar una matriz de valores, escríbalos entre corchetes y use la función JSON_CONTAINS en su consulta:

INSERT INTO `person` (`name`)
VALUES ('["name1", "name2", "name3"]');

2. Insertar objetos JSON (clave: pares de valores)

Para insertar objetos JSON individuales, use llaves para encerrar sus pares clave-valor:

INSERT INTO person VALUES ('{"pid": 101, "name": "name1"}');
INSERT INTO person VALUES ('{"pid": 102, "name": "name2"}');

Seleccionando datos JSON

Una vez que haya insertado sus datos JSON, puede recuperar registros específicos usando la función JSON_CONTAINS:

SELECT * FROM `person` WHERE JSON_CONTAINS(name, '["name1"]');

Nota: Estas funciones requieren MySQL versión 5.7 o superior y el motor de almacenamiento InnoDB.

Último tutorial Más>

Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.

Copyright© 2022 湘ICP备2022001581号-3