带有文本或字符串数​​据的MySql Update

时间:2012-01-03 14:25:26

标签: php mysql

UPDATE user_profiles SET xxx = xxx + 'tt00001' WHERE username = 'challapradyumna';

上述查询未按预期行事。

对于数字数据,xxx被添加到给定值,但如果给出了sting或text,则不会将其添加到现有数据的末尾。

2 个答案:

答案 0 :(得分:7)

在您的问题中'+'无法识别两个单词。要添加(concat)两个单词,您必须在查询中使用CONCAT函数,如:

update user_profiles set xxx=CONCAT(xxx,'tt00001') where username='challapradyumna';

如果你使用'+'那么它将被视为数学+而不是concat。所以,如果xxx中有数字,那么它将以数学方式添加xxx。 所以,最好在查询中使用CONCAT。

答案 1 :(得分:2)

您应该使用CONCAT函数代替'+'运算符,例如 -

UPDATE user_profiles SET xxx = CONCAT(xxx, 'tt00001') WHERE username = 'challapradyumna';