可能重复:
SQL:逐条比较两个表记录
我想通过记录比较两个表。每个表都有两个光标。代码看起来像这样
Declare Cursor c1 for SELECT * from Table1
OPEN c1
While @@Fetch_status=0
Begin
Declare Cursor c2 for SELECT * from Table2
OPEN c2
WHILE @@Fetch_Status=0
Begin
/*Comparison happens here*/
END
END
当 fecthing 时,我必须指定我正在获取哪个游标,我该怎么做?
这就是我想要做的:
对于 Table1 中的每条记录,我想
- 根据主键在 Table2 中搜索该记录。
- 找到后,我想根据 table1 中的列值更新 Table2 中的额外列值。
- 当 table2 中缺少这条记录时,我想将它从 table1 复制到 table2 并设置 table2 中额外列的默认值。