从每行的另一列中减去一列的内容

时间:2017-01-15 16:48:37

标签: mysql

我有一个很大的MySQL表,我想更改Description列。

我想删除每行中与Name列中的值匹配的每个单元格的开头,而单元格的其余部分保持不变。

请帮忙。 enter image description here

2 个答案:

答案 0 :(得分:1)

你可以使用更新来解释desciption中名称的位置是1(在描述的开头)

update my_table
set description = substr( description, length(name)+1)
where locate(description, name ) = 1

答案 1 :(得分:1)

REPLACE 是您的朋友。

使用它来查看更改:

SELECT TRIM(REPLACE(Deescription,`name`,'')) as newField from youtTableName;

更新您的表格

UPDATE youtTableName
SET `Deescription` =  TRIM(REPLACE(Deescription,`name`,''))
;