在mysql中有一个json数组类型列,并尝试有条件地从数组中过滤出一些元素。以下是示例:
原始json数组
[{“name”:“atencion a clientes”,“number”:“*111”},{“name”:“atn ciudadana”,“number”:“066”},{“name”:“atn ctes intl”,“number”:“+525813300”},{“name”:“bomberdos”,“number”:“116”},{“name”:“chelo”,“number”:“993-120-2100”}]
所需输出如下:
所需的输出json数组
[{“name”:“atn ctes intl”,“number”:“+525525813300”},{“name”:“chelo”,“number”:“993-120-2100”}]
我们只想保留电话号码长度>=10的元素。尝试使用以下代码,但无效。是否可以通过mysql函数实现这一点?谢谢。
其中长度(replace(json_extract(phone_contacts,'$[*].number'),'','')>=10
1条答案
按热度按时间6uxekuva1#
尝试选择您的
where
作为自己的列并检查输出。如果可行,你可以参考。所以
然后引用
having
在查询结束时