我有一张表并包含下面显示的数据,它叫做TABLE_A
+++++++++++++++++++++++++++++++++++++++++++++ PrimaryID | Col2 | SecondaryID +++++++++++++++++++++++++++++++++++++++++++++ 1 | Description 1 | 0 2 | Description 2 | 0 3 | Description 3 | 0 4 | Description 4 | 0 . | ... | . . | .
请参阅上面的 SecondaryID 。它的零值为初始值
我有另一张桌子,它名为TABLE_B,位于
之下+++++++++++++++++++++++++++++++++++++++++++++ PrimaryID | Col2 | ForeignKeyID +++++++++++++++++++++++++++++++++++++++++++++ 1 | Description 1 | 123 2 | Description 2 | 320 3 | Description 3 | 111 4 | Description 4 | 999 . | ... | . . | .
我在SQL Server中遇到麻烦, 如何使用TABLE_B上的 ForeignKeyID 值更新TABLE_A上的 SecondaryID 列,以便TABLE_A的PrimaryID中的每一行等于TABLES_B的PrimaryID。 但是,我不想使用LOOPING CURSORS或其他来解决这个问题。
有简单的方法吗?
我急需,谢谢你。
答案 0 :(得分:9)
是的,您可以在UPDATE操作中进行连接。如下:
UPDATE table_a SET SecondaryID = b.ForeignKeyID
FROM table_a a
JOIN table_b b
on a.PrimaryID = b.PrimaryID