
15.02.2010, 00:51
|
|
Reservists Of Antichat - Level 6
Регистрация: 07.07.2009
Сообщений: 324
С нами:
8866466
Репутация:
564
|
|
Код:
DELETE table1 FROM zzz as table1,zzz as table2 WHERE table1.x=table2.x AND table1.y=table2.y AND table1.unique_id>table2.unique_id
Где zzz - имя таблицы, x и y - поля
или так
Код:
CREATE TABLE tmp_ttt SELECT * FROM ttt GROUP BY pole, dublpole HAVING COUNT(dublpole) >= 1
Примерно так, принцип вроде понятен.
еще вариант
Код:
Удаления полных дубликатов записей через выполнение distinct select
--Создание копии таблицы без дубликатов во временной таблице
CREATE TEMPORARY TABLE bad_temp AS SELECT DISTINCT * FROM table_name;
--Удаление всех записей из старой таблицы
DELETE FROM table_name;
--Добавление записей без дублей
INSERT INTO table_name SELECT * FROM bad_temp;
--Удаление временной таблицы
DROP TABLE bad_temp;
Вариант с созданием временной таблицы:
CREATE TABLE tmpid SELECT MIN(ID) ID FROM table_name GROUP BY unique_key;
DELETE FROM table_name WHERE ID NOT IN (SELECT ID FROM tmpid);
Последний раз редактировалось shell_c0de; 15.02.2010 в 00:55..
|
|
|