MySQL удаление дубликатов

Век живи – век учись. Сколько раз приходилось делать таблицы с уникальными значениями. Делалось все топорным способом.

Создавалась таблица с аналогичной структурой. На нужном поле ставился уникальный индекс и запускалось копирование – в результате получали нужную “уникальную таблицу”.

Так бы и делалось еще 100 лет если бы не нужно было удалить дубликаты в таблице в 80 гигабайт :(

Тут и нашлось элегантное решение – всего одна строка. Время минимальное (хотя сервер пыхтел оёёй)

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

Все – этим запросом создается уникальный индекс на столбце `a`, а дубли удаляются!


Другие публикации:



Написать комментарий через:

 
               
  • Локальный блог
  •  
 

Ваш отзыв

Имя *

Почта (скрыта) *

Сайт

Напишите цифрами двa вoceмь двa *

Сообщение

 
Статусы для соц.сетей на ArtKiev Design Studio