使用 MySQL 8.0.4 及以上版本提供的 JSON_TABLE 函数来实现查询 id 在 3、4、5… 中的数据,示例如下:
SELECT *FROM table_nameCROSS JOIN JSON_TABLE(items, '$[*]' COLUMNS ( id INT PATH '$.id' )) AS jWHERE j.id IN (3, 4, 5);
JSON_TABLE 函数将 JSON 数组转换为行,并将 id 作为一列返回,然后使用 CROSS JOIN 将其与原表进行关联,最后筛选出 id 在 3、4 中的数据。
注意:使用 JSON_TABLE 函数需要 MySQL 8.0.4及以上版本的支持。
来源地址:https://blog.csdn.net/rantengfei1986/article/details/129305063