Задать вопрос
Joe_Weiser
@Joe_Weiser

Как удалить повторяющиеся строки в таблице MySQL?

Имеется таблица вида:
единственное поле
-------------------------
строка1
строка2
строка3
строка2
строка2
строка4
...
строка50998
Как с помощью php скрипта или через phpmyadmin удалить все дубликаты одним действием?
Спасибо!
  • Вопрос задан
  • 6509 просмотров
Подписаться 1 Оценить Комментировать
Помогут разобраться в теме Все курсы
  • Skillbox
    Веб-разработчик на PHP
    9 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
Решения вопроса 1
nowfine
@nowfine
сисадмин 30+ левел
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 2
kumaxim
@kumaxim
Web-программист
Вот Вам алгоритм для простого PHP-скрипта.

1.Получить все строки без будликатов. Дубли подавить через distinct
SELECT DISTINCT(f1) FROM table1
Результат выборки запонимаем в массиве

2.Очистить таблицу
TRUNCATE table1

3.В цикле каждую запись из массива, полученного в п.1 добавляем обратно в БД. Дабы гарантированно исключить повторы, можете вместо INSERT использовать REPLACE
Ответ написан
Комментировать
Immortal_pony
@Immortal_pony Куратор тега PHP
ALTER IGNORE TABLE `table` ADD UNIQUE INDEX tmp(column1)
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
FoodSoul Калининград
от 180 000 до 250 000 ₽
IT-Spirit Москва
от 230 000 до 320 000 ₽
от 200 000 до 290 000 ₽