elasticsearch - 在聚合内部过滤 Elasticsearch 查询
问题描述
我有一个查询尝试按年份字段存储记录,然后对于每个存储桶,我想
- 使用过滤条件创建子计数(分子)并获取 custom_id 的基数(唯一计数)
- 使用过滤条件创建子计数(分母)并获取 custom_id 的基数(唯一计数)
- 除以分子和分母
我不能做的是为分子和分母子桶添加过滤条件。
这是我的查询的样子 -
GET <index_name>/_search
{
"size": 0,
"query": { . . <ABLE TO USE bool QUERY HERE>. . },
"aggs": {
"test": {
"date_histogram": {
"field": "datetimefield",
"interval": "year",
"format": "yyyy"
},
"aggs": {
"filter": { <UNABLE TO USE THE SAME bool QUERY here> },
"denominator": {
"cardinality": {
"field": "custom_id.keyword"
}
},
"numerator": {
"cardinality": {
"field": "custom_id.keyword"
}
},
"division": {
"bucket_script": {
"buckets_path": {
"denom": "denominator",
"num": "numerator"
},
"script": "params.num / params.denom"
}
}
}
}
}
}
我需要一个用于分子和分母的过滤器块的原因是因为我对它们都有不同的标准集。有可能做我想要在这里实现的目标吗?
解决方案
推荐阅读
- sql - Plsql 函数查询中的性能调优
- javascript - 如何改变进入通过点击
- dart - final 实例变量可以在 dart 中使用 const 重新分配给其他值
- kubernetes - 为 Kubernetes Deployment 中的每个副本绑定不同的 Persistent Volume
- java - How can i print the backward in staircase problem?
- reactjs - Reducer always returning initial state React-native
- view - LATERAL VIEW and CASE Statement in KSQL
- javascript - Sequelize. How to find with many parameters
- android - How can I create a CardView and ImageView with a rounded border?
- sql - Min/Max timestamp of a slow changing dimension