MySql更新表,替换string1 string2

时间:2017-06-16 07:41:49

标签: mysql sql linux database

我需要在列大表中将string1替换为string2。我的桌子重量是1.7GB。如需更新,我将使用:

UPDATE table 
SET column = REPLACE( column, 'search', 'replace' );

所以,我有几个问题:

  1. 在程序中会锁定表吗?我应该隐藏我网站的公共部分吗?
  2. 此程序将执行多长时间?
  3. 如何更好地运行此功能?也许'屏幕'?如果我的ssh连接将关闭。
  4. MySQL 5.5.53

2 个答案:

答案 0 :(得分:2)

您不应该在表的所有行上运行替换。 而是在评论中添加@reds所说的where条件。 这将使您的更新更加高效,并且是正确的方法。

UPDATE table SET column = 'replace' where column = 'search';

答案 1 :(得分:-1)

就我而言:

UPDATE table SET column=REPLACE(column, 'search', 'replace')  WHERE column LIKE "%search%";