如何解决如何使用json函数在mysql查询中操作这些数组
我正在使用此查询
SELECT COUNT(1),JSON_EXTRACT(pack,JSON_UNQUOTE(PATH)) AS pkg
FROM
(SELECT pack,JSON_SEARCH(pack,'one','openstack-neutron-%',NULL,'$.packages[*]') AS PATH,cloud
FROM Node
WHERE JSON_SEARCH(pack,'$.packages[*]') IS NOT NULL ) AS sub
WHERE cloud = 'xxx'
GROUP BY pkg
现在我需要添加“全部”:
SELECT COUNT(1),'all','$.packages[*]') IS NOT NULL ) AS sub
WHERE cloud = 'xxx'
GROUP BY pkg
我遇到了问题,现在我有了一个数组,而不是JSON_UNQUOTE(PATH)中的值位置:
["$.packages[86]","$.packages[193]","$.packages[423]","$.packages[647]"]
["$.packages[209]","$.packages[548]","$.packages[651]","$.packages[871]"]
["$.packages[209]","$.packages[870]"]
["$.packages[86]","$.packages[647]"]
["$.packages[93]","$.packages[540]","$.packages[759]","$.packages[868]"]
如何更改我的查询以对下单进行计数?我曾想过将数组转换为行,但是查询需要很多时间。还有其他方法吗?我在Mariadb上,但没有json_table函数。
谢谢
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。