我当前正在将 JSON 对象输入到 MySQL 数据库,然后想要对它们运行查询。所以我有一个如下表:
subjects |
---------------------------------------------------------
|{
|"subjects": [{
| "subject":"English Language & Literature",
| "ageRange":["12-18"],
| "examlevel":["13+","gcse","as-level","a-level"],
| "examboard":["aqa","edexcel","ocr","wjec"]
|},
|{
| "subject":"Creative Writing",
| "ageRange":["8-18"], | Row 1
| "examlevel":null,
| "examboard":null
|},
|{
| "subject":"Media Studies",
| "ageRange":["14-18"],
| "examlevel":["gcse","as-level","a-level"],
| "examboard":["aqa","edexcel","ocr","wjec"]
|}]
|}
---------------------------------------------------------
在我运行的 MySQL 查询中
SELECT JSON_EXTRACT(subjects, '$."subjects"') FROM `table_name`
我得到这个回应
[{"subject": "English Language & Literature", "age...
为了获取主题名称,我执行了以下操作......
SELECT JSON_EXTRACT(subjects, '$."subjects[*]."subject"') FROM `table_name`
这返回
["English Language & Literature", "Creative Writin...
然后我尝试对 JSON 提取运行搜索查询
SELECT JSON_EXTRACT(subjects, JSON_UNQUOTE(JSON_SEARCH(subjects, 'all', '{Search Query i.e "E"}', NULL, '$."subjects"[*]."subject"'))) FROM `table_name`
这 ^^ 返回 NULL
我想进一步询问这个问题。因此,我想最终从该对象组中每个主题的每个 JSON 对象中提取主题名称。实际上,当您搜索主题时,它会搜索每行的每个 JSON 对象中每个主题字段的主题名称,以获得与搜索查询相关的结果。
我查看了 MySQL 文档,但没有太大帮助... - 现在我已经提取了提取的 JSON 数据,如何对它们运行搜索?然后仅检索与该搜索查询匹配的内容。
当年话下
相关分类