matchAllQuery() in ElasticSearch

只愿长相守 提交于 2019-12-11 06:59:36

问题


matchAllQuery() in Elasticsearch gets me only 10 results how do I increase its output so that I can get as many results as per my requirement.

Code

 QueryBuilder query = QueryBuilders.matchAllQuery();

回答1:


Yes u can do , here you can pass aPageRequestcount whatever you want and If you want no of records exist in Elastic search than repository.count() will work for that :-

int aPageRequestcount = (int) repository.count();

NativeSearchQueryBuilder aNativeSearchQueryBuilder = new NativeSearchQueryBuilder();  
      aNativeSearchQueryBuilder.withIndices(indexName).withTypes(type).withPageable(new PageRequest(0, aPageRequestcount));
final BoolQueryBuilder aQuery = new BoolQueryBuilder();


NativeSearchQuery nativeSearchQuery = aNativeSearchQueryBuilder.withQuery(aQuery).build();
                = elasticsearchTemplate.queryForList(nativeSearchQuery, A.class);



回答2:


By default 10 results are returned, you need to increase the size parameter:

SearchRequestBuilder request = client.prepareSearch(index)
    .setQuery(QueryBuilders.matchAllQuery())
    .setSize(100);


来源:https://stackoverflow.com/questions/43601775/matchallquery-in-elasticsearch

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!