首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >json数组中的MySQL条件过滤器元素

json数组中的MySQL条件过滤器元素
EN

Stack Overflow用户
提问于 2018-07-17 07:07:56
回答 1查看 1.1K关注 0票数 1

在MySQL中有一个json数组类型的列,并尝试有条件地从数组中过滤出一些元素。示例如下:

原始json数组

{"name":"Atencion a Clientes","number":"*111"},{"name":"Atn Ciudadana","number":"066"},{"name":"Atn Ctes Intl","number":"+525525813300"},{"name":"Bomberos","number":"116"},{"name":"Chelo","number":"993-120-2100"} }

期望的输出如下所示:

所需的输出json数组

{"name":"Atn Ctes Intl","number":"+525525813300"},{"name":"Chelo","number":"993-120-2100"}

我们只想保留电话号码长度为>= 10的元素。尝试使用以下代码,但不起作用。这可以通过MySQL函数来实现吗?非常感谢。

替换WHERE length(

(json_extract(phone_contacts,'$*.number‘),’','') ) >= 10

EN

回答 1

Stack Overflow用户

发布于 2018-07-17 10:31:43

尝试选择where作为它自己的列,并检查输出。如果它工作正常,你就可以引用它了。

所以

代码语言:javascript
复制
Select         length(replace(json_extract(phone_c ntacts,'$[*].number' ) , ' ', '') ) as my_length

然后在查询的末尾引用having

代码语言:javascript
复制
Having my_length>=10
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51371178

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档