无论字段的位置如何,都在嵌套文档中搜索字段

Searching nested documents for a field regardless of the positioning of the field

像这样考虑 Elasticsearch 中的文档:

{
  "id": 1,
  "Comment": "Comment text",
  "Reply": [{
    "id": 2,
    "Comment": "Nested comment text",
  }, {
    "id": 3,
    "Comment": "Another nested comment text",
  }]
}

我想搜索 id == 2,但不知道它是在文档的第一层还是第二层。这可能吗?还请记住,嵌套级别可以是任何东西(在开发时未知)。

如果可能的话,在不知道文档的第二层中有 id 的情况下,通过搜索 id == 2 对 return 此文档的查询是什么?

试试这个:

{
  "query": {
    "query_string": {
      "fields": ["*.id","id"],
      "query": "2"
    }
  }
}