【发布时间】:2019-09-09 20:55:07
【问题描述】:
我有类似的文件
{"domain":"US", "zipcode":"11111", "eventType":"click", "id":"1", "time":100}
{"domain":"US", "zipcode":"22222", "eventType":"sell", "id":"2", "time":200}
{"domain":"US", "zipcode":"22222", "eventType":"click", "id":"3","time":150}
{"domain":"US", "zipcode":"11111", "eventType":"sell", "id":"4","time":350}
{"domain":"US", "zipcode":"33333", "eventType":"sell", "id":"5","time":225}
{"domain":"EU", "zipcode":"44444", "eventType":"click", "id":"5","time":120}
我想按 eventType=sell 和 125 到 400 之间的时间过滤这些文档,按域分组,后跟邮政编码,并计算每个存储桶中的文档。所以我的输出就像(过滤器会忽略第一个和最后一个文档)
美国,11111,1
美国,22222,1
美国,33333,1
在 SQL 中,这应该很简单。但我无法让它在 ElasticSearch 上工作。有人可以帮我吗?
如何编写 ElasticSearch 查询来完成上述操作?
【问题讨论】:
标签: elasticsearch filter count group-by