Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Удаление дублирующих записей при добавлении уникального ключа
Форумы портала PHP.SU » PHP » SQL и Архитектура БД » Удаление дублирующих записей при добавлении уникального ключа

Страниц (1): [1]
 

1. ant - 22 Июля, 2013 - 13:49:56 - перейти к сообщению
Здравствуйте.
Есть таблица на более 200 000 записей. Нужно добавить уникальный ключ по нескольким полям.
CODE (SQL):
скопировать код в буфер обмена
  1. ALTER TABLE `tbl` ADD UNIQUE (`col1`(100) ,`col2`(100), `col3`(100));


Так как в таблице уже есть идентичные записи по этим полям, то вылетает ошибка:
#1062 - Duplicate entry 'блаблабла-блаблабла-блаблабла' for key 'col2'

Возможно ли добавить этот ключ так, чтобы дубликаты удалились, оставив записи в одном экземпляре? Вручную удалять такое количество записей как-то не хочется... =)
2. EuGen - 22 Июля, 2013 - 13:55:05 - перейти к сообщению
CODE (SQL):
скопировать код в буфер обмена
  1. ALTER IGNORE TABLE `tbl` ADD UNIQUE (`col1`(100) ,`col2`(100), `col3`(100));

?
3. ant - 22 Июля, 2013 - 14:51:36 - перейти к сообщению
EuGen
Оно =)
Спасибо

 

Powered by ExBB FM 1.0 RC1