2013-03-06 105 views
0

我有两个表,一个包含作者姓名及其联系人地址,另一个包含作者姓名及其ID。使用另一个表值更新一个表记录

两个表中的作者姓名都具有相同的值,我想从一个表中获取ID并更新名称相同的另一个表。

我尝试此查询,我相信它在T-SQL工程(子查询也能在MySQL的),但它并没有在MySQL的工作:

UPDATE authors 
set ID = (select b.ID from authors a, authorsID b 
where trim(a.name)=trim(b.name)); 

能否请你告诉我如何做这项工作?谢谢。

+0

请看到这个帖子,它可能帮助您 - http://stackoverflow.com/a/1262848/1315357 – Artegon 2013-03-06 19:40:06

回答

3
UPDATE authors a 
inner join authorsID b on trim(a.name) = trim(b.name) 
set a.ID = b.ID 
0

查询:

UPDATE authors 
SET ID = (SELECT b.ID 
      FROM authorsID b 
      WHERE trim(authors.name)=trim(b.name)) 
相关问题