我有一个表,其中插入了大批记录。所有这些记录都有一定的列,其中缺少一个字符:它们的开头缺少斜杠/。有没有一种方法可以使用纯SQL将字符添加到每一行的此列开头?

在PHP中这不是问题,但我想知道SQL中的解决方案。我当然知道SQL UPDATE语句,但是我不确定如何让它依赖当前值。我能想到的最好的方法是使用子查询:

UPDATE the_table t
SET the_column =
    CONCAT('/', SELECT the_column FROM the_table WHERE id=t.id)


这行得通吗,这是最简单的解决方案吗?我在MySQL 5.5.31上。

最佳答案

只需使用以下命令:

UPDATE the_table t
SET the_column =
    CONCAT('/', the_column )

10-04 11:50
查看更多