Rumah > pembangunan bahagian belakang > tutorial php > MYSQL逗号隔开的字符串如何正确删除

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

PHPz
Lepaskan: 2019-02-26 17:25:01
asal
2556 orang telah melayarinya


问题:

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

UPDATE `category` SET `arrchildid`=replace(`arrchildid`,',1','') WHERE `catid`=100
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk

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

回复讨论(解决方案)

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

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

UPDATE `category` SET `arrchildid`=replace(`arrchildid`,',1','') WHERE `catid`=100
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk

结果把不该删除的也删除了,有什么好的解决办法,万分感谢
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
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk

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

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


Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan