특정 필드에서 명시 적으로 일치하는 문서가 먼저 반환되고 다른 일치하는 문서가 오름차순으로 반환되도록 내 쿼리의 결과를 정렬하거나 채점하는 방법을 결정하려고합니다. SOLR의 공간 튜토리얼에 사용 된 예제를 따라Solr 공간 검색 - 문서를 먼저 명시 적으로 일치시킨 다음 거리별로 정렬하려면 어떻게합니까?
,의 난이 (의사) 같은 것을 보이는, 몇 상점을 가정 해 봅시다 :
<Store>
<Id>1</Id>
<Coords>10,-15</Coords>
<PostalCode>12345</PostalCode>
<ServiceArea>
<PostalCode>12345</PostalCode>
<PostalCode>23456</PostalCode>
</ServiceArea>
</Store>
<Store>
<Id>2</Id>
<Coords>11,-16</Coords>
<PostalCode>23456</PostalCode>
<ServiceArea>
<PostalCode>12345</PostalCode>
<PostalCode>23456</PostalCode>
</ServiceArea>
</Store>
그래서, 두 개의 저장합니다. 각자는 자신의 우편 번호를 사용하며 각 우편 번호는 서로의 우편 번호를 서비스합니다. 지금은 효과에 뭔가를 조회 할 :
Find stores which service PostalCode 12345
Ordered by stores in PostalCode 12345 first
Then ordered by ascending distance from PostalCode 12345
은 내가 StandardQueryParser
를 사용하여이를 유지하기 위해 노력하고있어 및 강화하는 것은 관여 경우는 오히려 지수보다 쿼리에 정의 될 필요가있다.