如何在MySQL的多表更新中使用表列作为字符串?

时间:2011-03-06 02:13:01

标签: mysql sql

两张桌子,

agent(agent_id, agent_real_name, .....)
blog(blog_id, blog_agent_id, blog_name, ...)

现在我想将blog_name设置为agent_real_name +“的博客” 我使用了以下SQL语句,但失败了,

update blog, agent set blog_name = agent_real_name '\'s blog' where agent_id = 31

PS:31是代理人的身份

怎么了?

感谢。

2 个答案:

答案 0 :(得分:2)

UPDATE blog b INNER JOIN agent a
ON a.agent_id = b.blog_agent_id
SET b.blog_name = CONCAT(a.agent_real_name,'\'s blog') 
WHERE a.agent_id = 31

答案 1 :(得分:1)

尝试使用:  update blog, agent set blog_name = concat(agent_real_name, '\'s blog') where agent_id = 31