查询以获取具有特定数量的已过滤嵌套文档的文档

时间:2015-07-30 04:52:53

标签: elasticsearch

我有一个弹性搜索文档类型,其结构如下所示。

// Let's call this the PARENT document
{
  "id": "...",
  ... other fields
  // events are NESTED documents
  "events": [
    {
      "type": "TYPE_A",
      "date": "<date 1>"
    },
    {
      "type": "TYPE_A",
      "date": "<date 2>"
    },
    {
      "type": "TYPE_B",
      "date": "<date 3>"
    }
  ]
}

如何编写一个查询来获取所有父文档

  1. 日期之间[日期1 - 日期3]
  2. 已发生N个TYPE_A事件
  3. 我可以在日期上编写一个与TYPE_A匹配的嵌套术语过滤器和一个范围过滤器,以查找指定日期范围之间所有事件的发生。但是现在没有办法指定必须发生N个这样的事件吗?

    如果有人可以指出可以实现的方法,我甚至愿意改变我现有的模型架构。

    与此匹配的现实生活查询的一个示例就是沿着这条线 - 找到我在过去30天内回答了5个以上JavaScript问题的所有StackOverflow用户

0 个答案:

没有答案