概述
解决思路将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 将逗号分隔数字替换成对应中文组合(场景商品SKU为数字组合1,2 将 其组装为["颜色","蓝色"])所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复