对不同的列做差值运算需要用到script脚本,maxAge代表文档中要操作的一列,使用params._source.修饰,下面的例子就是对最大年龄和最小年龄
//创建SearchSourceBuilder 对象装载搜索条件
SearchSourceBuilder sourceBuilder = new SearchSourceBuilder();
//使用AggregationBuilder 来装载聚合内容
AggregationBuilder sumMm = AggregationBuilders
.sum("sumMm")
.script(
new Script("params._source.maxAge- params._source.minAge + 1")
);
sourceBuilder.aggregation(sumMm);
//获取结果
ParsedSum avgAggregationBuilder = response.getAggregations().get("sumMm");