Задавайте вопросы, мы ответим
Вы не зашли.
База MySQL
Есть таблица, в ней более 100000 строк и много повторяющихся.
как сделать запрос в базу на удаление повторяющихся строк ?
если можно? ответ с конкретным примером так как я в MySQL не разбираюсь.
Спасибо
Неактивен
Нужно:
1. Определиться для себя, какие две строки являются повторяющимися
(конкретно — набор полей, который должен быть уникальным).
2. Сделать резервную копию таблички (на всякий случай).
3. Добавить уникальный индекс на табличку:
ALTER IGNORE TABLE tablename ADD UNIQUE (список полей п.1 через запятую);
Если третий пункт не заработает (ALTER IGNORE — штука с характером),
нужно:
1. Создать таблицу с той же структурой, но пустую:
CREATE TABLE tablename_new LIKE tablename;
2. Добавить уникальный индекс (п.3 предыдущего параграфа);
3. Скопировать туда данные, игнорируя дубликаты:
INSERT IGNORE INTO tablename_new SELECT * FROM tablename;
4. Переименовать таблички назад:
RENAME TABLE tablename TO tablename_old, tablename_new TO tablename;
5. Удалить старую таблицу:
DROP TABLE tablename_old;
Неактивен