如何通过sql搜索json中的[]

时间:2019-04-26 05:45:53

标签: mysql json

如何搜索[] json中的位置

{"buyer_uni_no":{"info":[],"Pos":[[0,0,0,0]]}}

还有我尝试的SQL查询,但是没有用。

select * from test where JSON_VALUE(myjson,'$.buyer_uni_no.info') = '[]'
select * from test where JSON_VALUE(myjson,'$.buyer_uni_no.info[0]') = ''

1 个答案:

答案 0 :(得分:1)

尝试在数组上使用JSON_LENGTH函数:

SELECT *
FROM test
WHERE JSON_LENGTH(json->"$.buyer_uni_no.info") = 0;

Demo

另一种方法,检查文字空数组[]

SELECT *
FROM test
WHERE CAST(myjson->"$.buyer_uni_no.info" AS CHAR(50)) = '[]';