我用错误的字符串更新了Name_Table.column_2数据。我更新了'JohnSmith',而不是“John Smith”。
现在我想替换多个字符串,例如:'JohnSmith'作为'John Smith''JohnDoe'作为'John Doe'等。
我不熟悉SQL,有人能帮我一次更换multiple strings吗。

#Name_Table

Column_1      Column_2
1             JohnSmith
2             JohnSmith
3             JohnDoe
4             JohnSmith
5             WayneRooney
6             JohnDoe
7             WayneRooney
8             JohnSmith
9             WayneRooney
10            JohnDoe

最佳答案

我不知道这种情况下的单一查询,但尝试下面的方法来解决您的问题。我相信这对你很好。

$sel = mysql_query('SELECT * FROM Name_Table;');
while($row = mysqli_fetch_array($sel)){
    $string = $row['Column_2'];
    $count = strlen($string);
    $strings = array();
    $i = 0;
    $ii = 0;

    while($i < $count)
    {
        $char = $string{$i};
        if(ereg("[A-Z]", $char, $val)){
            $ii++;
            $s = '';
            $s .= $char;
        } else {
            $s .= $char;
        }
        $strings[$ii] = $s;
        $i++;
    }
    $name_with_space = implode(' ',$strings);
    mysql_query('UPDATE Name_Table SET Column_2="'.$name_with_space.'" WHERE Column_1='.$row['Column_1']);
}

10-06 03:08