当前位置: 首页 > 面试题库 >

Elasticsearch:仅返回嵌套的inner_hits

宋耀
2023-03-14
问题内容

我有以下查询:

GET /networkcollection/branch_routers/_search/
{
  "query": {
    "nested": {
      "path": "queries",
      "query": {
        "bool": {
          "must": [
            { "match": 
              { "queries.dateQuery": "20160101T200000.000Z" }
            }
          ]
        }
      },
      "inner_hits" : {}
    }
  }
}

这将同时返回“匹配”对象(整个文档)和“ inner_hits”对象(嵌套在匹配内部)。

有没有办法让我只返回出现在“ inner_hits”结果中的匹配“查询”元素,而没有获取整个文档?


问题答案:

应该可以通过以下方式 在顶层 禁用source-
field
来实现"_source" : false

POST /networkcollection/branch_routers/_search/
{
  "_source" : false,
  "query": {
    "nested": {
      "path": "queries",
      "query": {
        "bool": {
          "must": [
            { "match": 
              { "queries.dateQuery": "20160101T200000.000Z" }
            }
          ]
        }
      },
      "inner_hits" : {}
    }
  }
}


 类似资料:
  • 我有以下POJO 在下面的类中,我想直接检索给定人员的嵌套字段“cars”,其名称作为参数传递,但它返回一个具有null值的列表。 但是,如果在上面的searchHits代码中,我将类更改为Person,如下所示,我将返回pojo Person,其中只填写属性“cars”(所有其他属性检索为null): 但是如何直接检索嵌套的属性车?

  • 问题内容: 我有这个映射: 而这个查询: 我等待25个结果,因为我有25个后索引。但是我得到一个空集。如果我删除嵌套的过滤器,一切正常。我希望能够过滤嵌套对象 在我的设置中,我有: 我在这里缺少什么。 谢谢 问题答案: 简短版本: 尝试此操作(更新端点和索引名称后): 它对我有用,并且简化了您的设置。稍后,我将发布带有较长解释的编辑。 编辑:长版: 查询的问题是分析器与查询中的过滤器结合在一起。您

  • 是否可以使用spring data elasticsearch返回所有elasticsearch文档的特定嵌套字段? 例如。es数据存储库将如何查找以下查询? 网址: /myIndex/MyType/_search 查询正文:

  • 我是Elasticsearch的新手,我提出了一个问题,Elasticsearch嵌套查询是否只能为嵌套字段返回匹配的嵌套文档。 对于示例,我有一个名为的类型,其中嵌套字段名为 和嵌套查询 我需要的是搜索有提到足球的评论的博客文章,每个博客文章的评论数与足球相匹配(在例子中它数为1,因为另一个评论刚刚提到篮球)。 然而,Elasticsearch似乎总是返回完整的文档,所以我如何才能实现它,或者我

  • 问题内容: 我想将查询发送给ELS,该查询仅返回总点击数。 没有别的 就像我得到回应一样 我只想打印731552 现在我只发送: 卷曲http:// server:9200 / games_profilder / _search 谢谢 问题答案: 您可以为此使用响应过滤: 这将产生 如果您真的只想得到总数,则可以使用以下方法传递结果: 那只会产生数字

  • 注释使用Spring数据elasticsearch查询并仅返回特定的嵌套字段 版本: springboot:2.1.7。释放 spring数据弹性搜索:2.1.7。释放 elasticsearch:6.5.4 文件: 存储库: 我只想得到名字的数据,这样可以相对节省内存资源。但我犯了个错误,不能这样使用吗?或者只能使用elasticsearchTemplate?