我正在使用Elastic 6.5
我需要将两个字段划分在一起,然后获得平均值。
我尝试重新创建的示例mysql:
SELECT avg(field1/field2)
FROM table
WHERE field1 > 0 && field2 > 0
最佳答案
我已经通过以下查询解决了我的任务:
{
"size": 0,
"query": {
"match_all":{}
},
"aggs": {
"average": {
"avg": {
"script": {
"source": "(doc['field1'].empty || doc['field2'].empty || doc['field2'].value < 1 ? null : doc['field1'].value / doc['field2'].value)"
}
}
}
}
}
关于elasticsearch - 如何划分两个领域并求平均值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55286791/