2017-09-04 11 views
0

solr 모음에서 뚜렷한 결과를 얻기 위해 SimpleQuery를 사용하려고하지만, 후에도 설정하고있어 반환하지 않습니다 내 StatsOptioncalcDistincttrue, 나는 '수 내가 원하는 결과를 얻지 못한다.봄 - 데이터-SOLR는 : SimpleQuery에 대한 통계 결과는 나에게 별개의 CALCS

동의어 spring-data-solr-2.1.4.RELEASE을 사용하고 있습니다.

에 SampleCode는 :

Field field = new SimpleField("fieldName"); 
StatsOptions statsOptions = new StatsOptions().addField(field).setCalcDistinct(true); 
SimpleQuery query = new SimpleQuery("*:*").setStatsOptions(statsOptions); 
StatsPage<MyClass> statsPage = solrTemplate.queryForStatsPage(query, MyClass.class); 
FieldStatsResult statsResult = statsPage.getFieldStatsResult(field); 
Collection<Object> distinctValues = statsResult.getDistinctValues(); 
Set<String> result = distinctValues.stream().map((i) -> i.toString()).collect(Collectors.toSet()); 
return result; 

위의 코드를 시도 후, 나는 얻을 모두가 최대가, 분, 계산,하지만 별개의 합계 또는 고유 값에 대한 결과가 없습니다.

Result

내가이 샘플에서 무슨 일을하고 있는가?

답변

0

귀하의 disctintValues 컬렉션과 같이 보이는 것은 EmptyList의 구현이므로 응답에 값이 없음을 의미합니다.

먼저 쿼리 결과가 반환되는지 확인하십시오.

+0

내 solr API에서 stats = on으로 동일한 쿼리를 이미 시도했으며 고유 값에 대한 결과를 반환합니다. –