MySQL从字段字符串中删除单词组区别

时间:2013-09-02 15:33:00

标签: mysql database

在mysql数据库中,我想从字段/列中删除字符串/部分

我的字段“数据”包含如下 -

1-----------,IDEA;T;P;N,VODAFONE;R;T;P;N,AIRCEL;R;T;N,---------------
2-----------,IDEA;T;P;N,VODAFONE;R;T;N,AIRCEL;R;T;N,---------------
3-----------,IDEA;T;P;N,VODAFONE;R;N,AIRCEL;R;T;N,---------------
4-----------,IDEA;T;P;N,VODAFONE;R;T;P,AIRCEL;R;T;N,---------------

这里的数据中有一部分是distingquish by,这意味着“VODAFONE; R; T; P; N”将表示为一个单词或一组。

现在我如何从现场删除IDEA Group或VODAFONE Group或AIRCEL组。

e.g. UPDATE mytable SET data="-----------,IDEA;T;P;N,AIRCEL;R;T;N,---------------"(olddata removing VODAFONE Group)

1 个答案:

答案 0 :(得分:1)

 UPDATE mytable SET data=
 CASE
 WHEN data LIKE '%VODAFONE;R;T;P;N,%' THEN REPLACE(data,'VODAFONE;R;T;P;N,','')
 WHEN data LIKE '%VODAFONE;R;N,%' THEN REPLACE(data,'VODAFONE;R;N,','')
 WHEN data LIKE '%VODAFONE;T;P;N,%' THEN REPLACE(data,'VODAFONE;T;P;N,','')
 WHEN data LIKE '%VODAFONE;R;T,%' THEN REPLACE(data,'VODAFONE;R;T,','')
 END
 WHERE data LIKE '%VODAFONE%'

替换' VODAFONE blah'使用要删除的字符串。这将在所有字段中删除它。 编辑。如果您需要更多,请填写所有案例。