选择 Json 数组 Mysql 5.7 的位置



我存储了这个json:

[{"id": "1", "nome": "11"}, {"id": "2", "nome": "12"}, {"id": "3", "nome": "13"}]

我正在尝试搜索这样的东西:

SELECT * from acessos where ddd->>"$[*].nome" = '13';

这是行不通的。

我认为路径是错误的,但如果我尝试:

SELECT ddd->>"$[*].nome" from acessos

我得到这个结果:

["11", "12", "13"]

有人知道如何以这种方式在 JSON 数组中搜索吗?

set @j = '[{"id": "1", "nome": "11"}, {"id": "2", "nome": "12"}, {"id": "3", "nome": "13"}]';
-- select JSON_SEARCH(@j,"All","13");
set @x = select substr(JSON_SEARCH(@j, "All", "13"),4,1);
select json_extract(@j,"$[@x]")

最新更新