2013-02-02 63 views
1

我有一个表,如下所示:如何更新基于价值MYSQL表列在相关表

ID NAME VALUE 
1 abc 10 
2 xyz 15 

我有一个表B如下:

ID VALUE_1 VALUE_2 VALUE_3 TOTAL YEAR 
1 0  0  0  0  2012 
2 0  0  0  0  2013 
3 0  0  0  0  2012 

我想UPDATE所有行Table BSETVALUE_2列到VALUETable A

我开始了我的查询Ÿ声明如下:

$query_string = ' 
UPDATE Table_B 
SET VALUE_2 = (SELECT...something should go here I think) 
WHERE Table_B.year = "2013" 

谢谢你帮

+0

有什么联系/表之间的连接列?或者你只是想要聚合? –

回答

1
UPDATE tableB b 
     INNER JOIN tableA a 
      ON a.ID = b.ID AND b.YEar = 2013 
SET  b.VALUE_2 = a.Name 
+0

谢谢@JW,我会解决这个问题并发回。 –

+0

@ H.Ferrence看到我更新的答案。我添加了'AND b.YEar = 2013'来选择2013年的唯一记录。 –

+0

没问题@JW ...指向我使用INNER JOIN的方向帮助我构建查询,这是我做过的测试和它的工作。谢谢 ! –