假设我有这样的事情:
id | title |
1 | First row |
现在我想将该值更新为:First row is here,只需添加is here。如您所想,不止一行,我想动态更新所有行。
UPDATE posts SET title=title+' is here'
我知道上面是错误的,我只是认为既然它适用于数字,也许它也适用于文本,但事实并非如此。
假设我有这样的事情:
id | title |
1 | First row |
现在我想将该值更新为:First row is here,只需添加is here。如您所想,不止一行,我想动态更新所有行。
UPDATE posts SET title=title+' is here'
我知道上面是错误的,我只是认为既然它适用于数字,也许它也适用于文本,但事实并非如此。
为此,您需要连接字符串,MySQL 具有函数CONCAT(),因此您的查询将是:
UPDATE posts SET title=CONCAT(title,' is here')
UPDATE posts SET title=CONCAT(title,' is here')
使用concat
:
UPDATE posts SET title=concat(title,'your_string_to_add') WHERE id='your_id'
给予很重要,WHERE id = 'id'
否则它将更新我相信的第一行。在你的情况下:
UPDATE posts SET title=concat(title,' is here') WHERE id=1