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으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿