当前位置:Gxlcms > PHP教程 > MYSQL逗号隔开的字符串如何正确删除

MYSQL逗号隔开的字符串如何正确删除

时间:2021-07-01 10:21:17 帮助过:108人阅读

问题:

有字段 arrchildid 值为 21,11,1,2
我想删除其中的1,运行mysql (相关mysql视频教程推荐:《mysql教程》)

UPDATE `category` SET `arrchildid`=replace(`arrchildid`,',1','') WHERE `catid`=100

结果把不该删除的也删除了,有什么好的解决办法,万分感谢
PHPCMS用的就是这种数据结构,不过我没找到他是怎么处理的。当分类删除或修改时,其父分类的arrchildid 字段肯定是要改变的。

回复讨论(解决方案)

UPDATE `category` SET `arrchildid`=replace(concat(`arrchildid`,','), ',1,', '') WHERE `catid`=100

有字段 arrchildid 值为 21,11,1,2
我想删除其中的1,运行mysql

UPDATE `category` SET `arrchildid`=replace(`arrchildid`,',1','') WHERE `catid`=100

结果把不该删除的也删除了,有什么好的解决办法,万分感谢
PHPCMS用的就是这种数据结构,不过我没找到他是怎么处理的。当分类删除或修改时,其父分类的arrchildid 字段肯定是要改变的。
我在phpmyadmin运行该语句出错,另外,如果arrchildid 值为 21,2,11,1 也没法替换,还有更好的解决方法吗

有字段 arrchildid 值为 21,11,1,2
我想删除其中的1,运行mysql

UPDATE `category` SET `arrchildid`=replace(`arrchildid`,',1','') WHERE `catid`=100

结果把不该删除的也删除了,有什么好的解决办法,万分感谢
PHPCMS用的就是这种数据结构,不过我没找到他是怎么处理的。当分类删除或修改时,其父分类的arrchildid 字段肯定是要改变的。
我在phpmyadmin运行该语句出错,另外,如果arrchildid 值为 21,2,11,1 也没法替换,还有更好的解决方法吗

不知道是什么原因,手动打了一遍,SQL就不出错了

人气教程排行