sql >> Databáze >  >> RDS >> Mysql

Jak získat hodnoty ze sloupce MySQL(5.6), pokud obsahuje dokument json jako řetězec

Abyste mohli dělat, co chcete, potřebujete MySQL 5.7.8+. Od 5.7.8 můžete používat JSON_EXTRACT funkce pro extrahování hodnoty z řetězce JSON:

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

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

Převzato z zde .

V MySQL 5.6 prostě nemůžete získat požadovanou hodnotu, protože MySQL neví nic o tom, co je objekt JSON. Takže vaše možnosti jsou:

  • Upgradujte na 5.7.8+
  • Analyzujte výsledek dotazu pomocí něčeho, co zpracovává JSON:


  1. Alternativa NOT IN On MySQL

  2. Existuje způsob, jak sledovat změny v databázi mysql pomocí perlu?

  3. Oprava „CHYBA:  každý dotaz UNION musí mít stejný počet sloupců“ v PostgreSQL

  4. Jak předat parametry hodnot tabulky do uložené procedury z kódu .net