2017-01-26 5 views
0

Solr 6을 사용 중입니다. 특정 ID에 대해 데이터 스트림 (날짜 범위)이 있습니다. 나는 그 안에 간격 (날짜) 만보고 싶다. 예 : 내가 가지고있는 것은 다음과 같습니다.간격 (간격)을 찾기위한 Solr 날짜 쿼리

{"start":"2016-04-20", 
"end":"2016-04-21",  
"file_id":"538b3274"}, 
{ 
"start":"2016-04-24", 
"end":"2016-04-25", 
"file_id":"538b3274"}, 
{ 
"start":"2016-04-25",  
"end":"2016-04-26", 
"file_id":"538b3274"}, 
{ 
"start":"2016-04-29",  
"end":"2016-04-30", 
} 

여기에 제가보고 싶습니다. 예 :

{ 
missing: [2016-04-22 TO 2016-04-25]   
"file_id":"538b3274"}, 
{ 
missing: [2016-04-27 TO 2016-04-28]  
"file_id":"538b3274"},  
} 

응답 또한 SOLR에서이 기능을 얻을하지 않을 수 있습니다 여러 날짜

<pre>{ 
missing: [2016-04-22 TO 2016-04-23], [2016-04-27 TO 2016-04-28]  
"file_id":"538b3274"},  
}</pre> 

답변

1

에 하나 개의 항목이 될 수 있습니다. 몇 가지 옵션이 있습니다.

  1. 클라이언트 측에서이 작업을 수행하면됩니다. 아마도 가장 쉽고 간단합니다.
  2. 사용자는 QueryResponseWriter을 작성하여 필요한 방식으로 문서를 반환 할 수 있습니다. 그러나 이것이 가능하다면, 당신이 다르게 당신의 문서를 포맷하고 싶지 않기 때문에 나는 확신한다, 당신은 Solr가 돌려 준 것들 중에서 새로운 문서를 생성 할 필요가있다. 시도해야 할 것입니다.
  3. Streaming Expressions도 시도해 볼 수 있습니다. 사용자 정의 Java 코드도 플러그인 할 수 있습니다.

    그러나 나는이보고 1.

3보다 많이, 훨씬 더 많은 작업
관련 문제