使用新列将数据从表移动到表

时间:2015-06-18 11:52:25

标签: mysql

我一直试图将一些与特定列相关的数据从一个表移动到另一个表。它们都有匹配的objectID。

所以我想做的是:

TABLE 1 
ObjectID
Field with Data

TABLE 2
ObjectID
FIELD with NEW column

因此对象ID彼此相关。我想做的就是用新列将数据从表1移到表2。

我试过以下但似乎无法让它全部正常工作。是否有任何建议可以帮助或指出正确的方向。

 update Table2  a
   Set a.NewColumn = (Select *
                     From Table1 b WHERE a.OBJECTID = b.OBJECTID
                     )

3 个答案:

答案 0 :(得分:0)

嗯,也许我没有得到它,但为什么不使用INSERT?

INSERT INTO TableB(...columns...)
SELECT ...columns...
FROM TableA

答案 1 :(得分:0)

您可以使用join update语法,需要确保Table2已有数据并且您要从Table1

更新其中的新列
update Table2 t2
join Table1 t1 on t1.OBJECTID = t2.OBJECTID
set t2.NewColumn = t1.Field

答案 2 :(得分:0)

你可以写这样的查询。

INSERT INTO Table2(ObjectID,Field)
SELECT ObjectID,Field
FROM Table1. 

您可以将任何默认值添加到额外列中。