如何使用 SQL 查询在列的每一行中添加加号(+)?

How to add plus(+) sign in every row of a column using SQL query?

我有一个数据库,其中有一列包含 phone 个数字。我想在每个 phone 数字的开头添加加号 (+)。

UPDATE Table 
SET Phone = CONCAT('+', Phone)

这是我用来插入任何其他字符的查询,但它似乎不适用于 + 号。它说 0 行受影响行匹配:4023 更改:0 警告:0,这意味着什么都没有改变。

即使我这样做 SET Phone = CONCAT('+91', Phone),也只会插入 91 而不是加号。

我想我明白这里发生了什么。您的 Table 可能对 Phone 列使用整数数据类型。在这种情况下 Phone = CONCAT('+91', Phone) 将值隐式转换为字符类型,添加前导“+”,然后将其转换回整数类型以存储值。

你可能想做类似的事情

ALTER TABLE `Table` MODIFY Phone Varchar(100);

(请相应地选择列类型)

转载在这里http://sqlfiddle.com/#!9/5b3a651/1