我想写一个查询,获取文档中一个字段的所有值的列表(根本没有条件)。我尝试以下代码:
@Query(fields = { "car_company_s" })
List<Car> findAllCarCompeny();
但它没有用,我得到以下错误:
Caused by: org.springframework.data.mapping.PropertyReferenceException: No property findAllCarCompeny found for type Car!
有没有办法做到这一点?
你想要的是一个"Term"。基本上它返回字段的所有值。你需要solr模板,如description所述。我们使用的示例:
@Resource
private SolrTemplate solrTemplate;
...
query = SimpleTermsQuery.queryBuilder()
.fields(key)
.prefix(startsWith.toLowerCase(Locale.ROOT)) // we have some search prefix
.sort(TermsOptions.Sort.INDEX)
.build();
TermsPage page = solrTemplate.queryForTermsPage(query);
Iterable<TermsFieldEntry> terms = page.getTermsForField(key);
条款基本上是您的价值观。请注意,您必须优化核心以删除已从已删除文档中删除的值。