在sql server 2012中,我有一个包含超过2,500万行重复项的表。该表没有唯一索引。它只有一个非聚集索引。我想消除重复项,所以我考虑了以下几点。
select distinct * into #temp_table from primary_table
truncate primary_table
select * into primary_table from #temp_table我想知道select distinct *查询的开销有多大。如果我上面的程序非常昂贵,我想知道是否有其他方法。
发布于 2014-03-04 13:40:25
我不知道它有多昂贵,但另一种方法是创建另一个具有主键的表,在那里插入所有数据,然后像这里所述的那样默默地拒绝重复项
http://web.archive.org/web/20180404165346/http://sqlblog.com:80/blogs/paul_white/archive/2013/02/01/a-creative-use-of-ignore-dup-key.aspx
基本上,使用IGNORE_DUP_KEY
https://stackoverflow.com/questions/22163765
复制相似问题