För att kunna göra vad du vill behöver du MySQL 5.7.8+. Sedan 5.7.8 kan du använda JSON_EXTRACT
funktion för att extrahera ett värde från en JSON-sträng:
SELECT JSON_EXTRACT('{"id": 14, "name": "Aztalan"}', '$.name');
+---------------------------------------------------------+
| JSON_EXTRACT('{"id": 14, "name": "Aztalan"}', '$.name') |
+---------------------------------------------------------+
| "Aztalan" |
+---------------------------------------------------------+
Taget från här .
I MySQL 5.6 kan du helt enkelt inte få det värde du vill ha då MySQL inte vet något om vad ett JSON-objekt är. Så dina alternativ är:
- Uppgradera till 5.7.8+
- Parseera frågeresultatet med något som hanterar JSON:
- Kan vara PHP json_decode (eller motsvarande på ditt språk)
- Ett onlineverktyg som http://json.parser.online.fr/