如何在弹性搜索中返回子文档的父ID?

时间:2014-06-04 18:54:30

标签: elasticsearch

我在弹性搜索中有父子关系。当我搜索子文档时,我也希望为每个孩子获取父文件的ID。

我看到你可以在过滤中使用_parent,但我也可以在"字段"中使用它。我想要返回的数组?

我的查询示例:

{
  //Fields to return
  "fields":[
    "_parent.id",     >> Does not work
    "_parent.title",  >> Does not work
    "commentText"
  ], 


  //Query (Filtered query)
  "query":{
    "filtered":{
      //Filter
      "filter":{
        "and":[        
          {
            "type":{ "value": "comment" }
          }
        ]   
      },
      //Query
      "query": {
        "multi_match": {
          "query": "xxx",
          "type": "best_fields",
          "fields": [
            "commentText"
          ]
        }
      }
    }
  }
}

1 个答案:

答案 0 :(得分:4)

我认为_parent只存储父ID。尝试这样的事情:

"fields":[
    "_parent",     
    "commentText"
  ]