Мы ищем нечеткий поиск в базе данных по электротехническим материалам (то есть кабелепровод, кабель и т. Д.). Проблема заключается в том, что из-за отсутствия согласованности для всех типов материалов мы не можем разделить размеры на отдельные поля из текстового описания, поскольку некоторые материалы оцениваются не по размеру, а по разным параметрам.
Я предпринял попытку сочетания полнотекстового поиска и реализации SQL CLR алгоритма поиска Левенштейна (для помощи в ранжировании), но мои результаты немного странные (то есть они неправильно сортируются из-за неправильного ранжирования) .
Например, если поисковый термин "3/4" ABCD Conduit ", я могу получить несколько не относящихся к делу результатов в следующем порядке:
1/2 "кабелепровод
1/4 "X 3/4" Кабель
1/4 "Кабельные стяжки
Тройники 3/4 "DFC
3/4 "ABCD Conduit
3/4 "Кабелепровод
Полагаю, я прибил проблему к тому факту, что эти два алгоритма поиска не учитывают актуальность знаков пунктуации и чисел. То есть при таком поиске я ожидал бы, что размер будет иметь приоритет над любым нечетким соответствием в остальной части описания, но мои результаты не отражают это.
У меня такой вопрос: может ли кто-нибудь порекомендовать лучшие алгоритмы поиска или другие подходы, которые могут лучше подходить для поиска комбинации буквенно-цифровых символов и знаков пунктуации?