使用 JSON 函数查询包含 JSON 数据的 MySQL 列
在 MySQL 中,您可以将 JSON 对象作为值存储在数据库列中。要在查询中使用特定 JSON 字段高效地从这些列中检索数据,请考虑使用 JSON 函数,例如 json_extract()。
使用 json_extract() 进行查询过滤
例如,让我们考虑下面名为articles的表,其中包含一个名为json_data的列,其中包含JSON对象:
Column | Data |
---|---|
id | 1, 2, 3 |
user_id | 1, 1, 2 |
json_data | '{"url":"https://www.cpubenchmark.net/","title": "CPU Benchmarks"}', '{"url":"http://www.ebay.com/sch/CPUs-Processors-/164/i.html","title": "Computer and Processors"}', '{"url":"https://www.youtube.com/watch?v=tntOCGkgt98","title": "Funny Cats Compilation"}' |
要根据特定JSON字段过滤记录,您可以使用json_extract()函数。例如,要检索 JSON 对象的标题字段中包含术语“CPU”的文章:
SELECT user_id, json_data FROM articles WHERE json_extract(json_data, '$.title') LIKE '%CPU%';
此查询将返回第一行,因为它与条件匹配。
附加说明
以上是如何使用 JSON 函数查询包含 JSON 数据的 MySQL 列?的详细内容。更多信息请关注PHP中文网其他相关文章!