如何指定;“开始”;使用java在ElasticSearchQuery中创建文档?(跳过文档数)
我构建了一个SearchQuery,如下所示:如何指定;“开始”;使用java在ElasticSearchQuery中创建文档?(跳过文档数),java,
elasticsearch,Java,
elasticsearch,我构建了一个SearchQuery,如下所示: SearchQuery searchQuery = new NativeSearchQueryBuilder() .withQuery(matchAllQuery()) .withQuery(queryString("A")) .withSort(SortBuilders.fieldSort("fruitId").order(SortOrder.DESC))
SearchQuery searchQuery = new NativeSearchQueryBuilder()
.withQuery(matchAllQuery())
.withQuery(queryString("A")) .withSort(SortBuilders.fieldSort("fruitId").order(SortOrder.DESC))
.withIndices("fruit").withTypes("fruit");
我希望能够在搜索结果中指定某种“开始”和“大小”,以便:
1) 返回基于“大小”的结果数
2) 返回基于“开始”整数的文档。例如,如果我的文档中的A、B、C、D、E…Z如果我的“开始”设置为5,“大小”设置为5,它将返回“F、G、H、I、J”。您需要:
你需要:
由于您使用的是Spring Data Elasticsearch,因此需要调用以下方法:
SearchQuery SearchQuery=new NativeSearchQueryBuilder()
.withPageable(new PageRequest(1,5))由于您使用的是Spring Data Elasticsearch,因此需要调用以下方法:
SearchQuery SearchQuery=new NativeSearchQueryBuilder()
.withPageable(newPageRequest(1,5))如果我能用Java将这个精确的字符串传递到一个查询中,那就太容易了!如果我可以使用Java将这个精确的字符串传递到查询中,那就太容易了!
{
"from" : 5, "size" : 5,
"query": {
....
}
}
SearchQuery searchQuery = new NativeSearchQueryBuilder()
.withPageable(new PageRequest(1, 5)) <--- add this
.withQuery(matchAllQuery())
.withQuery(queryString("A"))
.withSort(SortBuilders.fieldSort("fruitId").order(SortOrder.DESC))
.withIndices("fruit").withTypes("fruit");