【发布时间】:2014-12-11 20:28:13
【问题描述】:
我无法将数据从一个表移动到另一个表。上下文是这样的:
我有两个表,表 A 有一个包含 Guid 的列,如下所示:
+---------+
| ent_id |
+---------+
| 1 |
| 2 |
| 3 |
| 4 |
| 5 |
+---------+
表 B 也有一个包含 guid 的列,如下所示:
+---------+
|party_id |
+---------+
| 1 |
| 2 |
| 3 |
| 4 |
| 5 |
+---------+
我需要用表 B 中的记录更新表 A 中的记录
更具体地说,我尝试了:
Update TableA
Set ent_id =
(
Select party_id from Table B
)
但这只会用 TableB 中的一个重复 GUID 更新每个 ent_id
【问题讨论】:
-
你遇到了什么麻烦?
-
什么是“向导”?您能否提供更多解释,以便我们提供帮助。
-
我知道我可以使用游标循环遍历每条记录并将其插入,但这可能需要一段时间。我一直在寻找更好的方法。
-
GUID 是一个看起来像序列号的字段
-
嗯?为什么不直接截断
TableA并从TableB中插入值?我不明白你想要做什么。此外,您的示例数据的前后数据完全相同,因此无需执行任何操作。
标签: sql sql-server merge