MySQL — удалить дубликаты строк

MySQL — удалить дубликаты строк
просмотров: 295699 декабря 2015 года

Для того чтобы можно было удалить дубликаты записей в таблице, воспользуемся однострочным SQL-запросом:

ALTER IGNORE TABLE `table` ADD UNIQUE INDEX(email);

где: `table` — имя таблицы, email — имя столбца в котором ищем дубликаты!

 

2й вариант

В случае, если необходимо производить поиск дубликатов по 2-м столбцам.

ALTER IGNORE TABLE table1 ADD UNIQUE KEY(Name2, Name3);

3й вариант

Когда сложная ситуация, без создания копий таблиц, наверно не обойтись.

CREATE TEMPORARY TABLE tmp_tab AS SELECT DISTINCT * FROM your_table;

DELETE FROM your_table;

INSERT INTO your_table SELECT * FROM tmp_tab;

DROP TABLE tmp_tab; 

 

Поделиться

Что скажем?