Удалить повторяющиеся элементы

Doomer

Guest
Удалить повторяющиеся элементы

Подскажите как можно оставить только одну запись с одинаковыми полями type & id, т.е.

etype id
---
rest 1
rest 1
rest 1
rest 1
news 3

Мне нужно, чтобы после запроса осталось только

etype id
---
rest 1
news 3
 

jonny_k

Guest
Re: Удалить повторяющиеся элементы

Автор оригинала: Doomer
Подскажите как можно оставить только одну запись с одинаковыми полями type & id, т.е.
etype id
---
rest 1
rest 1
rest 1
rest 1
news 3
Мне нужно, чтобы после запроса осталось только
etype id
---
rest 1
news 3
SELECT DISTINCT etype_id FROM table;
 

grayangel

равновесник
$cnt-- = mysql_result(mysql_query("select count(id) as cnt from tbl where id=3 and etype='rest'"),"cnt");
mysql_query("delete from tbl where id=3 and etype='rest' limit $cnt");

Это так, навскидку... может гуру могут и одним запросом?
 

f1

formula 1
Автор оригинала: grayangel
$cnt-- = mysql_result(mysql_query("select count(id) as cnt from tbl where id=3 and etype='rest'"),"cnt");
mysql_query("delete from tbl where id=3 and etype='rest' limit $cnt");
Это так, навскидку... может гуру могут и одним запросом?
сделай у таблицы PRIMARY KEY (etype id ) или UNIQUE и больше такого не повторится
 

f1

formula 1
Автор оригинала: Unregistered
Я бы рад, но у меня может быть, что одно поле повторяется, а другое нет - такие поля должны оставаться
UNIQUE на два поля сразу
и у тебя будут только уникальные сочетания двух полей
 

zul

Новичок
А если в базе уже существуют повторяющиеся записи? Можно ли их как-нибудь аккуратно удалить?
 

zul

Новичок
а phpmyadmin ругается...
ALTER IGNORE TABLE `source` ADD UNIQUE (

`phone`
)
так что-ли надо, чтобы удалились или наоборот?
 
Сверху