SQL удаление дублей в таблицах MySQL
Для удаления полных дубликатов записей в общем виде достаточно выполнить distinct select во временную таблицу и заполнить из нее обрабатываемую таблицу заново
Для MySQL
--Создание копии таблицы без дубликатов во временной таблице
CREATE TEMPORARY TABLE bad_temp AS SELECT DISTINCT * FROM contents_site;
--Удаление всех записей из старой таблицы
DELETE FROM contents_site;
--Добавление записей без дублей
INSERT INTO contents_site SELECT * FROM bad_temp;
--Удаление временной таблицы
DROP TABLE bad_temp;
Для MSSQL
--Создание копии таблицы без дубликатов во временной таблице
SELECT DISTINCT * into #table1 FROM topics;
--Удаление всех записей из старой таблицы
DELETE FROM topics;
--Добавление записей без дублей
INSERT INTO topics SELECT * FROM #table1;
--Удаление временной таблицы
DROP TABLE #table1;