从字符串中删除特定值(字符串包含逗号分隔值)

时间:2015-07-13 16:27:46

标签: mysql

例如,如果我有这样的表结构:

Table 1
    ID Name Value

    001 Rajesh 90,100,210,400
    002 Suresh 100,400,300,66
    003 Mahesh 200,500
    004 Virat 400,578,57

如何从Suresh删除400?

DELETE Value ="400" FROM table1
WHERE Name = 'Suresh'

这不起作用。

1 个答案:

答案 0 :(得分:1)

我建议将值拆分为第二个表格,该表格通过此人的ID进行关联。但是,您可以对当前情况使用以下查询:

UPDATE table1
SET Value = TRIM(BOTH ',' FROM REPLACE(CONCAT(',', Value, ','), ',400,', ','))
WHERE Name = 'Suresh'

这是一个SQL Fiddle。有关参考,请参阅MySQL's string functions