我需要更新另一个表中的一些数据。
我只想简单地将数据从表1的col1到表2的col1中,行位于相同的位置,因此确实没有需要进行任何ID比较的工作。
我怎样才能做到这一点?
----------------------------------------- Db1.Table1 (Take yearModel from this table to update Table3) ----------------------------------------- imgid | int | PK | yearModel | int | ----------------------------------------- ----------------------------------------- Db2.Table2 (Go by this table to update Table3) ----------------------------------------- imgid | int | PK | uploadId | int | FK (With table3.uploadId) | ------------------------------------------ ------------------------------------------ Db2.Table3 (Update this table with the yearModel from table1) ------------------------------------------- uploadId | int | PK | uploadYearModel | int |
抱歉,我的数据库diagaram“ thingy”由于一些奇怪的原因而崩溃了。
我还应该提到Table1位于另一个数据库中。我不确定这是否重要..但是很好.. :)
提前致谢!
如果两个表中都有一个“公共键列”,并且此键列在两个表中具有相同的值(它们在两个表中引用相同的行),则下面的查询应该起作用:
UPDATE Table1 SET Column1 = t2.Column1 FROM Table2 t2 INNER JOIN Table1 t1 ON t2.KeyColumn = t1.KeyColumn
编辑:
UPDATE Table3 SET uploadYearModel = t1.yearModel FROM Table1 t1 INNER JOIN Table2 t2 ON t2.imgid = t1.imgid INNER JOIN Table3 t3 ON t3.uploadId = t2.uploadId