Поиск Lucene, где поле ДОЛЖНО начинаться с определенных букв - PullRequest
0 голосов
/ 11 февраля 2010

Я пытаюсь найти результаты в диапазоне, например, A TO C. Однако результаты приходят с результатами, которые содержат буквы в диапазоне, но я хочу только результаты, которые начинаются с букв в диапазоне.

Ответы [ 2 ]

1 голос
/ 15 февраля 2010

Самый простой способ - во время индексирования создайте еще одно поле, содержащее только первую букву. Так что, если поле в настоящее время содержит:

Alpha
Beta
Charlie

затем индексируйте это в отдельном поле (не проанализировано):

A
B
C

Затем используйте запрос диапазона как обычно

myFieldFirstLetter:[A TO C]
0 голосов
/ 18 февраля 2010

Я использовал frange, предоставляемый плагином QParser, доступным для solr 1.4

{!frange l=A u=C}fieldname

Я получил информацию от здесь

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...