SQLinfo.ru - Все о MySQL

Форум пользователей MySQL

Задавайте вопросы, мы ответим

Вы не зашли.

#1 18.01.2010 23:02:10

knobtweak
Участник
Зарегистрирован: 18.01.2010
Сообщений: 1

Хелп. Дубли.

Добрый вечер! Очень нужна консультация) Запрос на выборку дублей без "рукоприкладства"... при условии что строки с одинаковым title, к примеру, (или телефоном факсом и адресом, или даже полностью совпадающие по всем полям кроме tags, впринципи и теги могут быть одинаковыми) это нормально, т.к. некоторые строки различаються cat_id... Исходить из title, cat_id и tags и както это все конкатом? проблема еще в том что title может быть к примеру "ООО, Мускул" и "Мускул, ООО" и "ЧП Мускул" (при условии что компания сменила форму организации) и это тоже будет считаться дублем, а еще строки могут быть с одинаковым названием кат_айди и тегами, но в разной датой телефонами адресами и тд и их тоже нужно отфильтровать по дате - оставить более позднии, еще все это может совпадать и адрес и телефон и каталожный айди но могут быть добавлены icon, map, price и нужно будет выбрать строку без icon, map, price... что-то совсем запутался... помогите плиз... видимо надо както поэтапно... но что-то уже плохо соображаю...)

  `id` int(11) unsigned NOT NULL auto_increment,
  `city_id` int(11) unsigned NOT NULL default '0',
  `cat_id` int(11) unsigned NOT NULL default '0',
  `title` varchar(255) NOT NULL,
  `desc_release` varchar(255) NOT NULL,
  `description` text NOT NULL,
  `icon` varchar(255) NOT NULL,
  `map` varchar(255) NOT NULL,
  `price` varchar(255) NOT NULL,
  `phone` varchar(255) NOT NULL,
  `fax` varchar(255) NOT NULL,
  `address` varchar(255) NOT NULL,
  `email` varchar(255) NOT NULL,
  `site` varchar(255) NOT NULL,
  `tags` varchar(255) NOT NULL,
  `boss` varchar(255) NOT NULL,
  `contact` varchar(255) NOT NULL,
  `sort` int(11) unsigned NOT NULL default '0',
  `date` int(19) unsigned NOT NULL,
  `permit` int(1) unsigned NOT NULL default '0',

Неактивен

 

#2 19.01.2010 13:11:08

paulus
Администратор
MySQL Authorized Developer and DBA
Зарегистрирован: 22.01.2007
Сообщений: 6757

Re: Хелп. Дубли.

Попробуйте сформулировать на бумажке четкий критерий, по которому Вы
можете определить «одинаковость» строк. Еще на «поразмыслить»: одинаковы
ли фирмы L'Etoile и ООО Заря? А Nouvelle Etoile? А если фирма поменяла не
форму, а название? Например, GoldStar стал LG?

В любом случае, после автоматической зачистки, нужно будет всю базу смотреть
руками и думать.

Автоматическую зачистку, возможно, проще будет сделать, если сделать
отдельную табличку слов (т.е. пробежаться по title и выдрать оттуда слова, записав
в отдельную табличку), и потом искать дубликаты слов. По крайней мере, несколько
дублей найдете. Ну, без учета опечаток ;-)

Неактивен

 

Board footer

Работает на PunBB
© Copyright 2002–2008 Rickard Andersson