Мне нужно построить логику поиска, которая дает ранжированные результаты. Простым примером будет запрос к таблице со столбцами имя, фамилия и почтовый индекс. Требуемым выводом будет список совпадающих строк в порядке «степени соответствия».
Т.е., наилучшими результатами будут те, которые сопоставлены во всех трех столбцах, за ними следуют те, которые сопоставляются только в двух, а затем совпадения в одном столбце.
Есть ли признанное предпочтение, скажем, полнотекстового индексирования по нескольким запросам и объединению результатов? Есть что-то, что я определенно не должен делать?
Я понимаю, что все это довольно расплывчато и немного расходится со спецификой вопросов SO, но я ищу руководство по подходу, а не вопрос типа «сделай домашнее задание»: -)
(Платформа - SQL Server 2005)