首页 > 文章列表 > MySQL 5.7 如何高效统计JSON数组中特定值的出现次数?

MySQL 5.7 如何高效统计JSON数组中特定值的出现次数?

462 2025-03-22

MySQL 5.7 如何高效统计JSON数组中特定值的出现次数?

如何在 mysql 5.7 中统计 json 数组中特定值的计数

对于 mysql 5.7 版本,统计 json 数组中特定值的计数可以在单个查询中完成。

由于 or 语句只能计算具有交集的行数,因此不能满足“统计每个元素被使用次数”的需求。

更好的解决方案是使用 json_search 函数:

SELECT
    count( JSON_SEARCH( tags, 'one', "3467562849402896" ) ),
    count( JSON_SEARCH( tags, 'one', "3467562861985809" ) ),
    count( JSON_SEARCH( tags, 'one', "3465044211793921" ) )
FROM
    XXXXXXXXXX

此查询将返回指定元素在 json 数组中出现的次数。注意将 "one" 替换为 json 对象的键名。

来源:1733025002