在 MySQL 中搜索 JSON 数组元素
您的查询尝试使用 JSON_EXTRACT 函数将整个数组与标量值进行比较,这将始终返回非空结果。要搜索数组中的特定元素,您可以使用 JSON_CONTAINS 函数。
搜索整数数组:
JSON_CONTAINS('[1,2,3,4,5]','7','$')
如果数组将返回 0不包含值 7 和 1(如果包含)。
搜索字符串数组:
JSON_CONTAINS('["a","2","c","4","x"]','"x"','$')
如果数组包含字符串“x”,则返回 1,否则返回 0。
查询您的案例:
要选择数据列包含大于 2 的数组元素的所有行,请使用以下命令查询:
SELECT * from my_table WHERE JSON_CONTAINS(data, '2', '$');
这将返回数据列的数组包含大于 2 的元素的所有行。
以上是如何在 MySQL 中搜索 JSON 数组中的元素?的详细内容。更多信息请关注PHP中文网其他相关文章!