2014-03-06 2 views
0

Apache solr 검색을 사용하고 필드 값순으로 정렬하는 데 문제가 있습니다.apache solr 검색 필드 값순으로 정렬

누구든지이 문제를 해결할 수 있습니까?

'function_area'라는 필드가 있고, 값이 1,2,3,4 일 수 있다고 가정합니다.

하지만 function_area = 2를 포함하는 레코드가 맨 위에 있어야하고 나머지 레코드가 function_area에 의해 오름차순으로 오게하고 싶습니다.

기록 순서

기록 1 => function_area = 2

레코드 2 => function_area = 1

레코드 2 => function_area = 3

레코드 2 => function_area = 4

답변

0

Solr에 CommonQueryParameters으로 표시된 정렬 매개 변수를 사용할 수 있습니다. 또한 Solr 3.1이 여기에서 탐구 될 수 있기 때문에 FunctionQuery도 있습니다.

exists 기능이 특정 필드 값으로 결과를 얻기 위해 사용할 수 있습니다 먼저 주문 :

http://localhost:8983/solr/collection1/select=q=*:*&sort=exists(query({!v='function_area:2'})) DESC 
+0

나는 내가 function_area은 상단과 나머지 function_area에 표시해야 값 2를 가지고 원하는 실제로 예상 된 결과를 얻고 있지 않다 가치 1,3,4를 갖는 것은 오름차순으로 나옵니다. 이 순서대로 솔로로 기록하십시오. Slno. 1 레코드에 function_area가 포함되어 있음 1 Slno. 2 레코드에 function_area가 포함되어 있음 2 Slno. 3 레코드에 function_area가 포함됩니다. 3 Slno. 4 기록에 function_area가 포함되어 있습니다. 4 이 순서로 기록하고 싶습니다. Slno. 2 Slno. 1 Slno. 3 Slno. 4 Slno를 의미합니다. 2 기록이 위에 올 것입니다 – user3386503

+1

@ user3386503 더 구체적인 예를 들어 대답이 업데이트되었습니다. – rchukh