Aby móc robić to, co chcesz, potrzebujesz MySQL 5.7.8+. Od 5.7.8 możesz używać JSON_EXTRACT
funkcja do wyodrębnienia wartości z ciągu JSON:
SELECT JSON_EXTRACT('{"id": 14, "name": "Aztalan"}', '$.name');
+---------------------------------------------------------+
| JSON_EXTRACT('{"id": 14, "name": "Aztalan"}', '$.name') |
+---------------------------------------------------------+
| "Aztalan" |
+---------------------------------------------------------+
Pobrane z tutaj .
W MySQL 5.6 po prostu nie możesz uzyskać żądanej wartości, ponieważ MySQL nie wie nic o tym, czym jest obiekt JSON. Masz więc następujące opcje:
- Uaktualnij do 5.7.8+
- Przeanalizuj wynik zapytania z czymś, co obsługuje JSON:
- Może być PHP json_decode (lub odpowiednik w Twoim języku)
- Narzędzie online, takie jak http://json.parser.online.fr/