我无法在(JSON)记录上使用(mysql)JSON_EXTRACT
,例如:
[{"id": 156, "betas": [{"id": 324, "title": "mario", "gammas": [{"id": 190, "path": "file.png"}]}]}]
尤其是我无法进入最里面的方括号:
SELECT JSON_EXTRACT(main, '$[0].betas.$[0]') FROM mydb.mytable;
返回NULL
。我尝试了多种变体,但未能获得正确的变体。
我注意到SELECT JSON_EXTRACT(main, '$[0].betas') ...
返回
[{"id": 324, "title": "mario", "gammas": [{"id": 190, "path": "file.png"}]}]
答案 0 :(得分:1)
$
指的是JSON对象的根,将$[0]
放在路径中间没有意义。
尝试:
SELECT JSON_EXTRACT[main, '$[0].betas[0] FROM mydb.mytable
这应该返回
{"id": 324, "title": "mario", "gammas": [{"id": 190, "path": "file.png"}]}