【发布时间】:2021-01-04 12:31:12
【问题描述】:
我有一个包含对象数组的 json 列的表,如下所示:
create table test_json (json_id int not null primary key, json_data json not null) select 1 as json_id, '[{"category":"circle"},{"category":"square", "qualifier":"def"}]' as json_data union select 2 as json_id, '[{"category":"triangle", "qualifier":"xyz"},{"category":"square"}]' as json_data;
+---------+----------------------------------------------------------------------------------------+
| json_id | json_data |
+--------------------------------------------------------------------------------------------------+
| 1 | [{"category":"circle"}, {"category":"square", "qualifier":"def"}] |
| 2 | [{"category":"triangle", "qualifier":"xyz"}, {"category":"square"}] |
+---------+----------------------------------------------------------------------------------------+
我希望能够查询此表以查找数组中包含 json 对象的任何行 (json_id's),其中“类别”值为“square”且没有“限定符”属性。
上面的示例表只是一个示例,我正在寻找一个可以处理 json 数组中数百行和数百个对象的查询。
【问题讨论】:
标签: mysql mysql-5.7 mysql-json