mysql特定子字符串

问题描述

| 我在数据库中大约有500.000行,它们看起来像:
\":hello:hi:\"
\":bye:good bye:bye-bye:\"
\":hi:hi-hi:hi-hi-hi:hallo:\"
因此,我需要更新我的表并删除值中第三个字符\':\'之后的所有内容,因此我的结果应为:
\":hello:hi:\"
\":bye:good bye:\"
\":hi:hi-hi:\"
可能吗?谢谢。 MysqL 4.1.22。     

解决方法

是的,函数SUBSTRING_INDEX可以做到这一点:
UPDATE `table` SET `field` = CONCAT(SUBSTRING_INDEX(`field`,\':\',3),\':\');