sql >> Base de Datos >  >> RDS >> Mysql

Cómo obtener valores de la columna MySQL (5.6) si contiene un documento json como cadena

Para poder hacer lo que quieras, necesitas MySQL 5.7.8+. Desde 5.7.8 puedes usar JSON_EXTRACT función para extraer un valor de una cadena JSON:

SELECT JSON_EXTRACT('{"id": 14, "name": "Aztalan"}', '$.name');

+---------------------------------------------------------+
| JSON_EXTRACT('{"id": 14, "name": "Aztalan"}', '$.name') |
+---------------------------------------------------------+
| "Aztalan"                                               |
+---------------------------------------------------------+

Tomado de aquí .

En MySQL 5.6, simplemente no puede obtener el valor que desea, ya que MySQL no sabe nada sobre qué es un objeto JSON. Así que tus opciones son:

  • Actualizar a 5.7.8+
  • Analice el resultado de la consulta con algo que maneje JSON: