Ввод SQL-входа
Я запутался при попытке создать тестовую базу данных и случайно продублировал все внутри определенной таблицы. По сути, сейчас есть 2 записи в каждой записи, которая была когда-то раньше. Есть ли простой способ исправить это? (С использованием таблиц InnoDB)
1 ответ
Еще одна веская причина использовать автоинкрементные первичные ключи. Таким образом, строки не будут полностью дубликатами.
Вероятно, самый быстрый способ - скопировать данные в другую таблицу, обрезать первую таблицу и снова вставить ее:
create temporary table tmp as
select distinct *
from test;
truncate table test;
insert into test
select *
from tmp;
В качестве небольшого примечания: почти во всех случаях я рекомендую использовать полный список столбцов на insert
заявление. Это тот случай, когда это необязательно. В конце концов, вы помещаете все столбцы в другую таблицу и просто помещаете их обратно в оператор позже.