[ТЕМА ЗАКРЫТА]
Опции темы
19.03.2010 12:47  
OlegON
Прошу мастеров помочь с запросом и вообще интересно насколько он реален.
Необходимо сделать синтаксическое сравнение слов и вывести пары, которые отличаются друг от друга не более чем на 2 буквы, даже если они находятся в разных концах слова. Никаких текстовых опций в базе нет. Приведу пример:
из

батон
малако
молоко
коломо

должны выбираться только

малако
молоко

варианты с выборкой только различия только в одной букве тоже приветствуются...
 
19.03.2010 12:57  
kadr
в порядке бреда: преобразовать слово в число на основе ASCII кодов и сравнивать уже эти коды
 
19.03.2010 13:01  
OlegON
Не очень понял... Что-то вроде контрольной суммы?
Не получится, если опечатаешься с а на Я, контрольная сумма расползется в разы...
 
19.03.2010 13:06  
kadr
Цитата:
Сообщение от OlegON
Не очень понял... Что-то вроде контрольной суммы?
Не получится, если опечатаешься с а на Я, контрольная сумма расползется в разы...
ну частично лечится функцие upper, например
 
19.03.2010 13:15  
kadr
как-то же проверка орфографии работает в текстовых процессорах, они же не только по началу предлагют окончание но и варианты перестановок учитывают, наверняка все же собирается какая-то контрольная сумма


ПыСы в развитие своего предложения порыл чуток:
теория
Поиск на неточное соответствие: коды Хемминга


Цитата:
качестве примера хеш-функции можно привести функцию soindex, встроенную в такие СУБД, как Subase, MS SQL Server и Oracle.
 
19.03.2010 13:52  
OlegON
soundex она все таки... на русские слова не работает... uppercase тоже не поможет, если приписать в конец ъ... Или o латинскую присобачить...
 
19.03.2010 22:59  
baggio
надо мыслить методологично....

необходимо сравнивать несколько критериев сравнения:
1. Название товара разбить на состовляющие:

а) в первом слове названия товара - это вид товара - если он совпадает белее чем на 60% то вес 30ЕД, идем далее
б) остальное название товара состоящие из букв
если одинаковых букв более 30% - 20ЕД
если одинаковых букв более 50% - 30ЕД
если одинаковых букв более 70% - 40ЕД
с) цифры в названии товара приведенне... т..е. 0,1 приводим к 1... 200 тоже к 2... 0,123 к 123, 0,1050 к 1050... если совпадает вес 20ЕД
д) разница в розничной стоимости товара не более 10%, вес 15ЕД
е) шк тоже недолжно содержатся более 7 одинаковых цыфр.. вес 7ЕД
ж) единица измерения - 5ЕД
з) группа классификатора 5ЕД
Если итоговое ЕД более 60 выводить ворниг.. более 80... как пить дать одна фигняюю

как варианиат еще можно сравнивать количество прихода... и.т.д. но направление я думаю понятно..
 
05.05.2010 09:03  
John Doe
Столкнулся с задачей поиска наименований по количеству совпадающих слов. Задача аналогичная, прошу подтвердить правильность алгоритма:
список карточек вида:
наименование
наименование второе
... третье
выбираю слова из наименования текущей позиции и с текущей позиции иду вниз, вытаскивая наименования, где выбранные слова попадаются в требуемом количестве. Так? Нет ничего побыстрее?
 
 
Опции темы



Часовой пояс GMT +3, время: 05:07.

Все в прочитанное - Календарь - RSS - - Карта - Вверх 👫 Яндекс.Метрика
Форум сделан на основе vBulletin®
Copyright ©2000 - 2016, Jelsoft Enterprises Ltd. Перевод: zCarot и OlegON
В случае заимствования информации гипертекстовая индексируемая ссылка на Форум обязательна.