Я использую solr для запроса некоторых документов. В этом случае я не хочу заказывать результаты по релевантности, я хочу, чтобы они отсортировались по названию. Я сделал следующее solrj:Сортировка запроса в Solrj с пробелом
//sort by title
setSortField("title", SolrQuery.ORDER.asc)
Это прекрасно работает, когда нет или пробелов косой черты в названиях документов. Когда у меня есть 4 документа, значение заголовка упорядочены так:
"A"
"B"
"C"
"B D"
Мне кажется, что Solr начинает приказывать с поля после первого пробела в нем. Любые идеи, почему это происходит?
Вы используете строку или текст? Индексировано и/или хранится? Не хотите быть грубым, но ваш пример ** буквально ** истинно; '' B D' ** буквально ** приходит после 'C'? Еще, пожалуйста, разместите несколько реальных примеров. – aitchnyu
Описанное поведение, вероятно, связано с вашей цепочкой индексирования. Все зависит от того, какой токенизатор и фильтры вы используете для поля заголовка. Фактически сортировка производится с индексированными значениями, которые отличаются от того, что вы видите в результатах (сохраненный контент). – javanna