我的索引包含两个元素:
{
"pound" : 1.5
}
当ES通过
SUM
聚合将两个元素加在一起时,每个pound
值都舍入为1
而不是保留1.5
。为什么?结果应该是
3
,而不是2
。这是我的ES请求:
POST foo/bar/_search
{
"aggs": {
"sumPound": {
"sum": {
"field": "pound"
}
}
}
}
以及响应:
{
...,
"hits": {
"total": 2,
"max_score": 1,
"hits": [
{
...,
"_source": {
"pound": 1.5,
}
},
{
...,
"_source": {
"pound": 1.5,
}
}
]
},
"aggregations": {
"sumPound": {
"value": 2 <-- 1.5 + 1.5 == 2 ???
}
}
}
最佳答案
验证您的映射,pound
字段的类型是否设置为double
?看起来像是integer
。
关于elasticsearch - SUM聚合将每个值取整?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/21882733/