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

PHPz
發布: 2019-02-26 17:25:01
原創
2495 人瀏覽過


问题:

有字段 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就不出错了


來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板