У меня есть таблица с 10 миллионами записей с некластеризованным ключом индекса в одном столбце, и я пытаюсь дедуктировать таблицу. Я попробовал вставки с выбором, где либо использовать левое соединение, либо там, где оно не существует; но каждый раз я получаю ошибку с нарушением ключа. Вот запросы, которые я использовал;Нарушение первичного ключа - таблица дедуплирования
insert into temp(profile,feed,photo,dateadded)
select distinct profile,feed,photo,dateadded from original as s
where not exists(select 1 from temp as t where t.profile=s.profile)
Это просто вызывает нарушение ключевой ошибки. Я попытался с помощью следующих действий:
insert into temp(profile,feed,photo,dateadded)
select distinct profile,feed,photo,dateadded from original as s
left outer join temp t on t.profile=s.profile
where t.profile is null
Я закончил с использованием пакетной вставки, так как файл журнал становится слишком большим, но все еще получаю нарушение первичной ошибки ключа даже на только 1000 записей.
Destination Table :IX_Temp - profileUrl(ASC)--> unique key (non clustered)
Source Table: IX_PURL - profileUrl(ASC) ---> index (non clustered, not unique
Migrate в http://dba.stackexchange.com/? –