2011-01-05 5 views
0

내가 SOLR 1.4을 사용하고 있는데의 schema.xml에서 다음 필드를 정의 :이 쿼리로SOLR 여러 패싯 SINT 필드 범위

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

내가 얻을 정의 된 범위 내에서 예상되는 항목 (30000-25000) .

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] 

이 쿼리를 사용하면 두 범위 내의 항목 만 기대되지만 두 가지 범위 밖에있는 항목도 얻을 수 있습니다. 예를 들어, 나는 예상대로

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] 

119000. 왜 마지막 쿼리가 작동하지 않는 SALE_PRICE와 70000 및 항목을하는 SALE_PRICE와 아이템을 얻을? 정의 된 두 범위 내의 항목 만 선택하도록 마지막 쿼리를 작성해야합니까?

답변

2

난 그냥 기본 스키마에이를 시도하고 일 :

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] 

주 두 번째 범위도 필드 한정자 "가격"가지고

+0

그게 중요 : 두 번째 범위도 가지고 있습니다를 필드 한정자 "가격 :" – Karussell

+0

고마워! 그거야. – thd

관련 문제