你的浏览器禁用了JavaScript, 请开启后刷新浏览器获得更好的体验!
发现
分享
文章
活动
登录
怎么又是你
ES对多个字段聚合,select cola,colb from table group by cola,colb
Elasticsearch
| 作者
mars
| 发布于2017年07月26日 | 阅读数:
3360
分享到:
QQ空间
新浪微博
微信
QQ好友
印象笔记
有道云笔记
如题,JavaAPI或者DSL语法怎么写,O(∩_∩)O谢谢。
没有找到相关结果
已邀请:
与内容相关的链接
提交
3 个回复
zhangli
赞同来自:
SearchResponse searchResponse = esClient.prepareSearch("dmp_keyword")
.setTypes("dmp_keyword_effect")
.setQuery(queryBuilders)
.addAggregation(AggregationBuilders.terms("by_keyword").field("keyword.raw")
.subAggregation(AggregationBuilders.terms("by_devicetype").field("deviceType.keyword")
// .order(Terms.Order.aggregation("sumImpNumber", false))
.subAggregation(AggregationBuilders.sum("sumImpNumber").field("impressionNumber"))
.subAggregation(AggregationBuilders.sum("sumImpCost").field("impressionCost"))
.subAggregation(AggregationBuilders.sum("sumClkNumber").field("clickNumber"))
.subAggregation(AggregationBuilders.sum("sumClkCost").field("clickCost"))
.subAggregation(AggregationBuilders.sum("sumOrderCount").field("orderCount"))
.subAggregation(AggregationBuilders.sum("sumDirectProductNum").field("directProductLineNum"))
.subAggregation(AggregationBuilders.sum("sumDirectProductAmount").field("directProductLineAmount"))
.subAggregation(AggregationBuilders.sum("sumInDirectProductNum").field("indirectProductLineNum"))
.subAggregation(AggregationBuilders.sum("sumInDirectProductAmount").field("indirectProductLineAmount"))
.subAggregation(AggregationBuilders.sum("sumInfluenceProductNum").field("influenceProductLineNum"))
.subAggregation(AggregationBuilders.sum("sumInfluenceProductAmount").field("influenceProductLineAmount"))
.subAggregation(AggregationBuilders.max("keywordId").field("keywordId"))
).size(10000000))
.get();
Cheetah
赞同来自:
dsl语法,刚好回答其他问题的你这里也能用{
"query" : {
"match_all" : { }
},
"aggregations" : {
"a" : {
"terms" : {
"field" : "a",
"order" : {
"c.value" : "asc"
}
},
"aggregations" : {
"b" : {
"terms" : {
"field" : "b"
}
},
"c" : {
"sum" : {
"field" : "c"
}
}
}
}
}
}
byyuyi
赞同来自:
我试验过一种script方式的~ 不过效率耗时 不知跟楼上
@Cheetah
大哥那种相比如何~
{
"size" : 0,"query" : {"match_all" : {}},
"aggs" : {
"groupBy" : {
"terms" : {
"script": {
"inline": "doc[\"cola.keyword\"].value + doc[\"colb.keyword\"].value "
},
"order": {"_count": "desc"}
}
}
}
}
要回复问题请先
登录
或
注册
发起人
mars
活动推荐
Aug
15
2025 Zabbix 中国峰会
上海
·
8-15 周五
·
进行中
Aug
23
Gitee Talk | 模力方舟 AI 应用开发沙龙
广州·南洋冠盛酒店
·
8-23 周六
·
报名中
Aug
23
偷懒也是生产力!算力优化与平台自动化实战
上海徐汇区模速空间
·
8-23 周六
·
报名中
Oct
17
第27届 GOPS 全球运维大会暨研运数智化技术峰会 · 上海站
上海
·
10-17 周五
·
报名中
相关问题
除了设置mapping为not analyzied,还有其他方法让一个string字段不分词吗?
请问查询人与人之间合作度,这种聚合查询怎么写呢?
Elasticsearch聚合操作的时间复杂度是O(n)吗?
聚合查询如何优化
path.data 配置了多个路径后 es的存储和获取机制是什么
elasticsearch如何为类型添加字段并赋初值
logstash向es里面导入mysql数据,表字段名称自动变成了小写
logstash如何运行多个实例?
query_string查询多值字段问题请教
kibana怎样配置向多个ES请求
对聚合结果的操作
问题状态
最新活动:
2017-09-13 11:11
浏览:
3360
关注:
4
人
3 个回复
zhangli
赞同来自:
.setTypes("dmp_keyword_effect")
.setQuery(queryBuilders)
.addAggregation(AggregationBuilders.terms("by_keyword").field("keyword.raw")
.subAggregation(AggregationBuilders.terms("by_devicetype").field("deviceType.keyword")
// .order(Terms.Order.aggregation("sumImpNumber", false))
.subAggregation(AggregationBuilders.sum("sumImpNumber").field("impressionNumber"))
.subAggregation(AggregationBuilders.sum("sumImpCost").field("impressionCost"))
.subAggregation(AggregationBuilders.sum("sumClkNumber").field("clickNumber"))
.subAggregation(AggregationBuilders.sum("sumClkCost").field("clickCost"))
.subAggregation(AggregationBuilders.sum("sumOrderCount").field("orderCount"))
.subAggregation(AggregationBuilders.sum("sumDirectProductNum").field("directProductLineNum"))
.subAggregation(AggregationBuilders.sum("sumDirectProductAmount").field("directProductLineAmount"))
.subAggregation(AggregationBuilders.sum("sumInDirectProductNum").field("indirectProductLineNum"))
.subAggregation(AggregationBuilders.sum("sumInDirectProductAmount").field("indirectProductLineAmount"))
.subAggregation(AggregationBuilders.sum("sumInfluenceProductNum").field("influenceProductLineNum"))
.subAggregation(AggregationBuilders.sum("sumInfluenceProductAmount").field("influenceProductLineAmount"))
.subAggregation(AggregationBuilders.max("keywordId").field("keywordId"))
).size(10000000))
.get();
Cheetah
赞同来自:
"query" : {
"match_all" : { }
},
"aggregations" : {
"a" : {
"terms" : {
"field" : "a",
"order" : {
"c.value" : "asc"
}
},
"aggregations" : {
"b" : {
"terms" : {
"field" : "b"
}
},
"c" : {
"sum" : {
"field" : "c"
}
}
}
}
}
}
byyuyi
赞同来自:
{
"size" : 0,"query" : {"match_all" : {}},
"aggs" : {
"groupBy" : {
"terms" : {
"script": {
"inline": "doc[\"cola.keyword\"].value + doc[\"colb.keyword\"].value "
},
"order": {"_count": "desc"}
}
}
}
}