支持的版本:MySQL5.7以上
表生成
CREATE TABLE `json_users` (`col` JSON);
插入数据
INSERT INTO `json_users`
VALUES
('{"name": "tanaka", "gender": 1, "options": {"x": 100, "y": 200}}'),
('{"name": "yamada", "gender": 2, "options": {"x": 300}}'),
('{"name": "suzuki", "gender": 1, "options": {"x": 100, "y": 200, "z": [1, 3, 4]}}');
查询
SELECT * FROM `json_users`;
抽出指定数据
object的情况 ->"$.key"
的形式抽出
list的情况 ->"$[]"
的形式抽出
SELECT `col`->"$.name" FROM `json_users`;
结果含有双引号
如果想要得到没有双引号的结果则用JSON_UNQUOTE函数
SELECT JSON_UNQUOTE(`col`->"$.name") FROM `