Solr диапазон полей Sint для нескольких фасетов - PullRequest
0 голосов
/ 05 января 2011

Я использую Solr 1.4 и определил следующее поле в schema.xml:

<field name="SALE_PRICE" type="sint" indexed="true" stored="true" />

С помощью этого запроса я получаю ожидаемые элементы в пределах определенного диапазона (от 25000 до 30000).

http://localhost:8983/solr/select/?q=*%3A*&facet=on&facet.field={!ex=SALE_PRICE}SALE_PRICE&fq={!tag=SALE_PRICE}SALE_PRICE:[25000+TO+30000]

С помощью этого запроса я получаю ожидаемые элементы в заданном диапазоне (от 85000 до 90000).

http://localhost:8983/solr/select/?q=*%3A*&facet=on&facet.field={!ex=SALE_PRICE}SALE_PRICE&fq={!tag=SALE_PRICE}SALE_PRICE:[85000+TO+90000]

С помощью этого запроса я ожидаю только элементы в этих двух диапазонах, однако я также получаюпредметы, которые не входят в эти два диапазона.Например, я получаю элементы с SALE_PRICE, равным 70000, и элементы с SALE_PRICE, равным 119000.

http://localhost:8983/solr/select/?q=*%3A*&facet=on&facet.field={!ex=SALE_PRICE}SALE_PRICE&fq={!tag=SALE_PRICE}SALE_PRICE:[25000+TO+30000]+OR+[85000+TO+90000]

Почему последний запрос не работает должным образом?Как мне написать последний запрос только для выбора элементов в двух определенных диапазонах?

1 Ответ

2 голосов
/ 06 января 2011

Я только что попробовал это на схеме по умолчанию, и это сработало:

http://localhost:8983/solr/select/?q=*%3A*&facet.field={!ex=p1}price&facet=on&fq={!tag=p1}price:[0%20TO%2010]%20OR%20price:[200%20TO%20500]

Обратите внимание, что второй диапазон также имеет квалификатор поля "цена:"

...