1

我想在 mysql 中删除我的行的一部分。像这样:

我的行:1,2,3,4

我想做:1,2,3

我怎样才能做到这一点?

我知道可以用这段代码来完成,但有更好的方法吗?

UPDATE Table SET message = REPLACE(message, ",4", "") WHERE id = 1;

4

2 回答 2

3

所以这会起作用。

UPDATE Table SET message = CASE
WHEN message LIKE '4,%'
THEN // enter code here to replace '4,' in message with ''
WHEN message LIKE '%,4,%'
THEN // enter code here to replace ',4,' in message with ','
WHEN message LIKE '%,4'
THEN // enter code here to replace ',4' in message with ''
ELSE // this means all other occurances of 4 like 14,41,44,etc do nothing here or skip this else condition
END;
于 2014-12-26T10:19:18.173 回答
0

为了安全起见,您首先在测试服务器中测试代码。

如果你要替换 ,4 ,mysql 也会替换 ,40

你必须改变字符串

,1,2,3,4,

你必须更换,4,

于 2014-12-26T09:28:41.570 回答