将字符添加到MySQL数据库中的每一行

时间:2015-02-28 22:08:40

标签: mysql sql database

我有一张表,其中插入了一大批记录。所有这些记录都有一个特定的列,其中缺少一个字符:它们在开头时缺少斜杠/。有没有办法使用纯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。

4 个答案:

答案 0 :(得分:6)

只需使用:

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

答案 1 :(得分:2)

您的版本可能有用。但你真的只想做:

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

答案 2 :(得分:1)

试试这个

UPDATE table t SET column = CONCAT('/', column)

答案 3 :(得分:1)

你试过这个吗?

UPDATE t SET column = Concat('/', column);