изтриване на повтарящи записи в таблицата

mnis

Registered
Здравейте, как да изтрия повтарящи записи в таблица, като запазя единият. Т.е. примерно от четири повтарящи се записа да изтрия само трите.

Пример:

id | name
1 | vasil
2 | vasil
3 | vasil
4 | vasil
5 | petar
6 | ivan

След изтриването да остане:

id | name
1 | vasil
5 | petar
6 | ivan

Ще съм много благодарен на всеки който ми помогне....
 
CREATE TABLE new_table as
SELECT * FROM old_table WHERE 1 GROUP BY column;
new_table - нова таблица с произволно име която няма повтарящите се записи
old_table - таблицата ти от която искаш да махнеш повтарящите се записи
column - колонката с повтарящите се записи ( в случая name )

след това изтрий старата таблица
Код:
DROP TABLE old_table;
и преименувай новата с името на старата
Код:
RENAME TABLE new_table TO old_table;
и така... :?:
 
Хай, изпълни : ALTER IGNORE TABLE table ADD UNIQUE INDEX(name);

После ако искаш си го дропни с : ALTER TABLE table DROP INDEX name - ако искаш да влизат нови записи с съществуващо име
 

Back
Горе