Проблемы запроса SOLR ComplexPhrase Range - PullRequest
0 голосов
/ 13 июня 2019

Я пытаюсь запросить диапазон чисел в строке.Например, мой запрос выглядит следующим образом:

{!complexphrase inOrder=true}address:"MAIL BOX NUM [10800 TO 10900]"

Хотя результаты включают в себя все ожидаемые, он также включает в себя MAIL BOX NUM 1083, 1084 и т. Д.

Они не находятся в пределах определенного диапазона, но этоПохоже, что он выполняет поиск «как» вместо того, чтобы искать совпадение в диапазоне.Есть ли способ решить эту проблему?

1 Ответ

0 голосов
/ 13 июня 2019

В пределах диапазона выполняется сопоставление - помните, что они обрабатываются не как числа, а как текст.Если вы сортируете текст, 1083 сортирует после 10800, но до 10900:

1080
10800
10801
...
1081
108100
...
1084
...
109000

Если вы хотите сделать что-то подобное, используйте фильтр регулярных выражений дляизвлечь число в его собственное поле (и установить поле как целое число), а затем сопоставить его с этим полем для диапазона.

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