【问题标题】:How to translate Elastic Search query in Java by using the query builder?如何使用查询构建器在 Java 中翻译 Elastic Search 查询?
【发布时间】:2021-06-10 01:40:03
【问题描述】:

我正在尝试使用查询生成器在 Java 中翻译以下弹性搜索查询?有人可以给出任何想法吗?

GET <index-name>/_search
{
  “size”: 1,
  “sort”: [
  {
    “Date”: {
    “order”: “desc”
   }
  }
 ]
}

【问题讨论】:

  • 你能告诉我们你已经尝试过什么吗?
  • 这是我到目前为止所做的:SearchRequest sq = new SearchRequest(); searchRequest.indices(index); SearchSourceBuilder builder = new SearchSourceBuilder(); builder.size(1); builder.sort(new FieldSortBuilder("Date").order(SortOrder.DESC)); searchRequest.source(ssr);

标签: java elasticsearch resthighlevelclient


【解决方案1】:

您需要使用SortBuilder 对字段进行排序。以下请求将按 desc 顺序对 Date 字段进行排序

    RestHighLevelClient client = new RestHighLevelClient(restClientBuilder);
    SearchSourceBuilder searchSourceBuilder = new SearchSourceBuilder();
    searchSourceBuilder.size(1).sort(new FieldSortBuilder("Date").order(SortOrder.DESC));
    SearchRequest searchRequest = new SearchRequest("my-index");
    searchRequest.source(searchSourceBuilder);
    SearchResponse searchResponse = client.search(searchRequest, RequestOptions.DEFAULT);

【讨论】:

  • @Marshmallow19 请仔细阅读以下答案,如果这能解决您的问题,请告诉我?
猜你喜欢
  • 2020-06-03
  • 1970-01-01
  • 2022-09-28
  • 2016-02-19
  • 2023-01-11
  • 2017-06-12
  • 2017-06-30
  • 1970-01-01
  • 2022-10-04
相关资源
最近更新 更多