我是靠谱客的博主 认真发夹,这篇文章主要介绍Mysql 将逗号分隔数字替换成对应中文组合(场景商品SKU为数字组合1,2 将 其组装为["颜色","蓝色"]),现在分享给大家,希望可以做个参考。

 

解决思路将1,2切割为1和2再根据结果查询对应的中文名称再组装起来

 

使用locate 判断是否存在 逗号,再使用substring_index切割获取到左右两边的数字(目前场景为1,2 必定只存在一个逗号,下面的方式不适用多个比如1,2,3,自行想其他办法切割到,只要把数字切割出来其他内容根据结果进行第二次查询再使用concat函数组装起来即可)

 


sql:

updateg_goods_specificationgppsetgpp.skustr=(selectt.strfrom(selec tif(locate(',',sku)>0,
concat('["',(selectgp.val_namefromg_goods_poramgpwheregp.val_id=(substring_index(g.sku,',',-1))andgp.gid=g.goods_idgroupby
gp.val_name),'","',(selectgp.val_namefromg_goods_poramgpwheregp.val_id=(substring_index(g.sku,',',1))groupbygp.val_name),'"]')
,concat('["',(selectgp.val_namefromg_goods_poramgpwheregp.val_id=(substring_index(g.sku,',',-1))
and gp.gid=g.goods_idgroupby
gp.val_name),'"]'))asstr
,goods_id,idfromg_goods_specificationg)twheret.id=gpp.id);

 

蓝色区域为解决思路,自行参考下

最后

以上就是认真发夹最近收集整理的关于Mysql 将逗号分隔数字替换成对应中文组合(场景商品SKU为数字组合1,2 将 其组装为["颜色","蓝色"])的全部内容,更多相关Mysql内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(125)

评论列表共有 0 条评论

立即
投稿
返回
顶部