Forum Webscript.Ru

Общие => Базы данных => Тема начата: a@mail.dux.ru от 10 Декабря 2003, 04:11:50

Название: Как найти в MySQL повторяющиеся записи?
Отправлено: a@mail.dux.ru от 10 Декабря 2003, 04:11:50
Подскажите плиз, как найти в MySql базе данных повторяющиеся записи по полю fname

например select * from db1 where fname (и дальше не знаю как :(  )


есть такой оператор unique но я не понял как им пользоваться в моем случае
Название: Как найти в MySQL повторяющиеся записи?
Отправлено: FANTAzeRus от 10 Декабря 2003, 08:59:39
select * from db1 where fname=\'Условие поиска\'
Название: Как найти в MySQL повторяющиеся записи?
Отправлено: Alexandr от 10 Декабря 2003, 09:18:07
select count(*) as c, fname from db1
GROUP BY 2
HAVING c>1
Название: Как найти в MySQL повторяющиеся записи?
Отправлено: tserbis от 10 Декабря 2003, 09:29:28
Alexandr, почему-то мне кажется, что a@mail.dux.ru хотел одним запросом сразу выбрать все поля таких записей :-)
Название: Как найти в MySQL повторяющиеся записи?
Отправлено: Alexandr от 10 Декабря 2003, 11:22:18
tserbis, так не получится.
Название: Как найти в MySQL повторяющиеся записи?
Отправлено: tserbis от 10 Декабря 2003, 11:25:26
Alexandr, ото ж бо...

a@mail.dux.ru, уточнил бы - что именно нужно.
Название: Как найти в MySQL повторяющиеся записи?
Отправлено: a@mail.dux.ru от 10 Декабря 2003, 16:59:04
tserbis
да, я хочу выбрать все повторяющиеся поля разом.

вот пример: в базе db1 поля ID и fname

в полях
ID fname
1  aa
2  ff
3  hhh
4  aa
5  ff
6  gfdg


после задуманной мною выборки должны быть выбраны поля с ID
1,4,2,5
Название: Как найти в MySQL повторяющиеся записи?
Отправлено: Metaller от 11 Декабря 2003, 10:13:08
select t1.* FROM table as t1, table as t2 WHERE t1.fname=t2.fname AND t1.id<>t2.id

примерно так
Название: Как найти в MySQL повторяющиеся записи?
Отправлено: a@mail.dux.ru от 19 Декабря 2003, 04:03:08
Metaller  - ты (Вы) гений!
Спасибо. ваш код работает.

Правда здорово медленно. у меня 36 000 записай которые нужно было проверить. Но это лучше, чем просто руками.
Название: Как найти в MySQL повторяющиеся записи?
Отправлено: Alexandr от 19 Декабря 2003, 09:07:52
Цитировать
a@mail.dux.ru:
Правда здорово медленно.

CREATE INDEX fname ON table (fname)