#search #sphinx
#Поиск #sphinx
Вопрос:
У меня есть таблица mysql с 2 полями для поиска:
SELECT name, tag FROM table
Я добавляю эту таблицу в Sphinx, и мне нужно выполнить поиск по этой таблице следующим образом:
Сначала я показываю результаты, соответствующие первому имени поля, затем мне нужно показать результаты, соответствующие второму полевому тегу
Все эти результаты мне нужно показать в одном результате
Ответ №1:
В общем случае ранжирование так не работает, его сложно явно отсортировать таким образом.
Но есть FieldWeights, которые дадут вам практически тот же результат http://sphinxsearch.com/docs/current.html#api-func-setfieldweights
(при использовании SphinxQL есть ОПЦИЯ field_weights)
… просто установите высокий вес для имени и меньший вес для тега, это должно означать, что совпадения имен получат больший вес и будут показаны первыми.