我正在编写一个需要在表上循环并将值插入另一个表格的脚本。
问题是在将数据插入新表之前链接数据时会出现一些重复值。
我在while循环中执行此操作,它看起来像SQLServer在内存中构建所有insert语句并在脚本完成时执行它们。
感觉我是否正确,如果是这样,有没有办法强制SQLServer在代码中出现时单独执行每个事务?
答案 0 :(得分:0)
一般来说(但并非总是如此),当您收到重复记录时,您的逻辑就会出现问题。也就是说,使用选择不同来删除重复项。
Insert into tablec (a, b, c)
select distinct tablea.a, tablea.b, tableb.c
from tablea
left outer join tableb on tablea.a = tableb.b