Автор Тема: Как найти в MySQL повторяющиеся записи?  (Прочитано 9134 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн a@mail.dux.ru

  • Фанат форума
  • Постоялец
  • ***
  • Сообщений: 105
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
Подскажите плиз, как найти в MySql базе данных повторяющиеся записи по полю fname

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


есть такой оператор unique но я не понял как им пользоваться в моем случае

Оффлайн FANTAzeRus

  • Завсегдатай
  • Пользователь
  • **
  • Сообщений: 93
  • +0/-0
  • 0
    • Просмотр профиля
Как найти в MySQL повторяющиеся записи?
« Ответ #1 : 10 Декабря 2003, 08:59:39 »
select * from db1 where fname=\'Условие поиска\'

Оффлайн Alexandr

  • Фанат форума
  • Ветеран
  • *****
  • Сообщений: 865
  • +0/-0
  • 0
    • Просмотр профиля
    • http://gtp.hobi.ru
Как найти в MySQL повторяющиеся записи?
« Ответ #2 : 10 Декабря 2003, 09:18:07 »
select count(*) as c, fname from db1
GROUP BY 2
HAVING c>1
Kiss my CSS
Pусские gtp gp3 ( midi + tab ) -   - Все для Авто.

Оффлайн tserbis

  • Фанат форума
  • Старожил
  • ****
  • Сообщений: 496
  • +0/-0
  • 0
    • Просмотр профиля
Как найти в MySQL повторяющиеся записи?
« Ответ #3 : 10 Декабря 2003, 09:29:28 »
Alexandr, почему-то мне кажется, что a@mail.dux.ru хотел одним запросом сразу выбрать все поля таких записей :-)

Оффлайн Alexandr

  • Фанат форума
  • Ветеран
  • *****
  • Сообщений: 865
  • +0/-0
  • 0
    • Просмотр профиля
    • http://gtp.hobi.ru
Как найти в MySQL повторяющиеся записи?
« Ответ #4 : 10 Декабря 2003, 11:22:18 »
tserbis, так не получится.
Kiss my CSS
Pусские gtp gp3 ( midi + tab ) -   - Все для Авто.

Оффлайн tserbis

  • Фанат форума
  • Старожил
  • ****
  • Сообщений: 496
  • +0/-0
  • 0
    • Просмотр профиля
Как найти в MySQL повторяющиеся записи?
« Ответ #5 : 10 Декабря 2003, 11:25:26 »
Alexandr, ото ж бо...

a@mail.dux.ru, уточнил бы - что именно нужно.

Оффлайн a@mail.dux.ru

  • Фанат форума
  • Постоялец
  • ***
  • Сообщений: 105
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
Как найти в MySQL повторяющиеся записи?
« Ответ #6 : 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

Оффлайн Metaller

  • Мелкое злобное существо
  • Ветеран
  • *****
  • Сообщений: 538
  • +0/-0
  • 2
    • Просмотр профиля
    • http://michael.pp.ru
Как найти в MySQL повторяющиеся записи?
« Ответ #7 : 11 Декабря 2003, 10:13:08 »
select t1.* FROM table as t1, table as t2 WHERE t1.fname=t2.fname AND t1.id<>t2.id

примерно так
Everybody\'s Got A Ticket To Ride Except For Me And My Lightning...

Оффлайн a@mail.dux.ru

  • Фанат форума
  • Постоялец
  • ***
  • Сообщений: 105
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
Как найти в MySQL повторяющиеся записи?
« Ответ #8 : 19 Декабря 2003, 04:03:08 »
Metaller  - ты (Вы) гений!
Спасибо. ваш код работает.

Правда здорово медленно. у меня 36 000 записай которые нужно было проверить. Но это лучше, чем просто руками.

Оффлайн Alexandr

  • Фанат форума
  • Ветеран
  • *****
  • Сообщений: 865
  • +0/-0
  • 0
    • Просмотр профиля
    • http://gtp.hobi.ru
Как найти в MySQL повторяющиеся записи?
« Ответ #9 : 19 Декабря 2003, 09:07:52 »
Цитировать
a@mail.dux.ru:
Правда здорово медленно.

CREATE INDEX fname ON table (fname)
Kiss my CSS
Pусские gtp gp3 ( midi + tab ) -   - Все для Авто.

 

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28