如何在 MySQL 5.7 中统计 JSON 数组中特定元素的使用次数?

如何在 mysql 5.7 中统计 json 数组中特定元素的使用次数?

如何在 mysql 5.7 中统计 json 数组中特定元素的使用次数

mysql 5.7 中没有专门用于统计 json 数组中特定元素数量的函数。然而,我们可以使用 json_search() 函数和分组查询来实现类似的功能。

解决方案:

  1. 使用 json_search() 函数搜索目标元素:

    json_search(tags, 'one', "3467562849402896")

    这将返回一个包含目标元素的 json 值的列表(如果找到的话)。

  2. json 值进行分组并计数:

    select
        count(json_search(tags, 'one', <目标元素>)) as count
    from
        <table>
    group by
        json_search(tags, 'one', <目标元素>)

    这将对找到的目标元素进行分组并计算每个元素出现的次数。

示例:

根据给定的 json 数据和目标元素,查询将会产生以下结果:

+-----------------------+------+
| count                  | total |
+-----------------------+------+
| "3467562849402896"    | 3     |
| "3467562861985809"    | 2     |
| "3465044211793921"    | 1     |
+-----------------------+------+

这种方法允许我们灵活地统计 json 数组中任何指定元素的计数,而无需使用外部代码或用户定义函数。

以上就是如何在 MySQL 5.7 中统计 JSON 数组中特定元素的使用次数?的详细内容,更多请关注其它相关文章!