从具有重复项的表更新table1

时间:2010-01-08 22:20:35

标签: sql-server

我有两张桌子:

NewTable(partNumber,html)

OldTable(partNumer,html)

旧表有重复数据,即具有相同partNumber和html的行。

NewTable为空。

我想从'OldTable'中取出行并将它们插入NewTable。

我从'OldTable'获取任何行的唯一条件,其中html列不是空字符串,所以:

SELECT TOP 1 FROM OldTable WHERE html <> ''

更新会是什么样的?

2 个答案:

答案 0 :(得分:3)

这应该有效:

INSERT INTO NewTable(partNumber, html) 
SELECT DISTINCT partNumber, html FROM OldTable WHERE html <> ''

答案 1 :(得分:0)

在NewTable上添加一个唯一索引,包括partNumber和html,然后启用Ignore dups。

然后你可以简单地......

INSERT NewTable(partNumber,html) SELECT OldTable partNumer,html WHERE html&lt;&gt; ''