Elasticsearch:查询嵌套对象属性和父属性

时间:2016-02-22 10:02:33

标签: elasticsearch nested

我有一些文档在嵌套对象中嵌套了对象:

{
    "started_at": 1455088063966,
    "ended_at": 1455088131966,
    "tags": [{
        "type": "transfer",
        "at": 1455088064462,
        "events": [{
            "type": "transfer_processed",
            "at": 1455088131981

        }]
    }, {
        "at": 1455088138232,
        "item": "tag",
        "type": "info"
    }]
}

这里,主文档有几个嵌套对象(标记),每个标记有几个嵌套对象(事件)。

我想获取传输类型的标签后60000毫秒发生 transfer_processed 类型事件的所有文档。 为此,我需要查询 tags.at tags.type tags.events.at 标记。 events.type 即可。我无法弄清楚如何:我只设法查询tags.events属性,或仅查询标签属性,而不是两者。

1 个答案:

答案 0 :(得分:0)

嵌套对象实际上是单独的Lucene文档,因此您基本上是在尝试加入"多个文件一起做你的比较。不幸的是,Elasticsearch不支持此功能。

Have a look at this similar question and answer which explain it well