Блог Михаила Крамера. PHP и JS

Запрос на удаление дубликатов

Для удаления дубликатов записей можно использовать следующие команды:
table_name - заменить на название таблицы
unique_key - заменить на поле в котором, после выполнения запроса, не останется дубликатов.
ID - уникальный ключ в таблице.

DELETE tn FROM table_name tn JOIN (SELECT MAX(ID) AS ID FROM TABLE_NAME GROUP BY unique_key HAVING COUNT(*) > 1) tn2 USING(ID)
*хорошо работает на больших таблицах, проверенно =)

Ваш комментарий
Комментарии
Spike
31 окт. 2021 г.

А если дубликатов будет 3 и больше?

Spike
1 нояб. 2021 г.

Если дубликатов будет 3 и больше, то запрос нужно будет повторять. Проверил