Jeg tror, at du kun kan opnå dette i Mysql 5.7.
I version 5.7 kan du gøre noget som:
SELECT JSON_EXTRACT(json_field, '$.name');
og det vil kun udtrække navnetøglen fra json-objekt.
Søg i alle elementer med tagget 'JavaScript':
SELECT * FROM `table` WHERE JSON_CONTAINS(json_field, '["JavaScript"]');
Find alle elementer med tags, der starter "Java":
SELECT * FROM `table` WHERE JSON_SEARCH(json_field, 'one', 'Java%') IS NOT NULL;
brug 'én' for at finde det første match eller 'alle' for at finde alle matcher
Du kan udtrække Twitter-kaldenavnet ved hjælp af en JSON-sti:
SELECT name, json_field->"$.twitter" AS `twitter` FROM `user`;
Du kan også henvise til en JSON-sti i WHERE-sætningen for kun at returnere brugere med en Twitter-konto:
SELECT name, profile->"$.twitter" AS `twitter` FROM `user` WHERE profile->"$.twitter" IS NOT NULL;
Du kan gøre flere ting som:
-
Oprettelse af JSON-værdier
-
Normalisering, fletning og autoindpakning af JSON-værdier
-
Søgning og ændring af JSON-værdier
-
Sammenligning og rækkefølge af JSON-værdier
-
Aggregering af JSON-værdier
for mere info henvises til:https://dev.mysql. com/doc/refman/5.7/en/json.html