|  | 
Задавайте вопросы, мы ответим
Вы не зашли.
Есть таблица coll из 10 полей. Порядка 35 000 000 записей
Есть 3 поля. назовем f1,f2,f3 которые не уникальны, а должны быть таковыми.
Делаю запрос
 select f1,f2,f3, count(*) from coll group by f1, f2, f3 having count(*)>1 
Обнаружил что отображенное количество count(*) каждого из дубля равно двум.
Соответственно записи обнаруженные этой выборкой надо удалить.
Как это сделать? Простые решения не получаются.
Неактивен

Прочтите до конца
http://sqlinfo.ru/forum/viewtopic.php?id=274
Неактивен
У меня чуть другая ситуация, сравнивать надо на дубликаты значений группы полей f1,f2,f3 вместе. Concat делать не вариант, долго слишком
т.е.
есть таблица
     f1,      f2,      f3     f4 ... f10
1/  abc     12      ab     xy ........
2/  abc     12      ab     az .......
одну (любую) из этих записей надо убить
Неактивен
В общем ничего не осталось поделать как выгрузить результаты запроса в другую таблицу, и убить дубликаты сравнением. Как ни странно на 35000000 записей (таблица 2 Гб) затратилось пол секунды. Видимо благодаря индексу на эти 3 поля.
Неактивен

Ещё можно 
Неактивен