42.global bucket的使用:单个品牌与所有品牌销量对比
主要知识点:
- _global bucket的使用
本例以搜索单个品牌和所有品牌的销量对比进行学习_global 。es在进行aggregation操作时都只只是在一个scope中进行聚合等操作,对于一个搜索+聚合的操作,那么这个聚合操作就必须在搜索操作所探索的结果范围内。因此就需要用到_global语法来对全部数据进行聚合。
本例要求得出两个结果,一个结果是基于query搜索结果来聚合的; 另一个结果,是对所有数据执行聚合。
语法
GET /tvs/sales/_search
{
"size": 0,
"query": {"term": {"brand": {"value": "长虹"}}},
"aggs": {
"single_brand_avg_price": {"terms": {"field": "color"}},
"all":{
"global": {},
"aggs": {"all_brand_avg_price": {"avg": {"field": "price"}}}
}
}
}
注意语法层级。执行结果如下:
"aggregations": {
"all": {
"doc_count": 8,
"all_brand_avg_price": {
"value": 2650
}
},
"single_brand_avg_price": {
"doc_count_error_upper_bound": 0,
"sum_other_doc_count": 0,
"buckets": [
{
"key": "红色",
"doc_count": 3
}
]
}
}
}
global:就是global bucket,就是将所有数据纳入聚合的scope,而不管之前的query结果。
single_brand_avg_price:就是针对query搜索结果,执行的,拿到的,就是长虹品牌的平均价格
all.all_brand_avg_price:拿到所有品牌的平均价格
42.global bucket的使用:单个品牌与所有品牌销量对比的更多相关文章
- 第二章 Vue快速入门--20 品牌案例-完成品牌列表的添加功能+ 21 品牌案例-根据Id完成品牌的删除
<!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8&quo ...
- search(14)- elastic4s-统计范围:global, filter,post-filter bucket
聚合一般作用在query范围内.不带query的aggregation请求实际上是在match_all{}查询范围内进行统计的: GET /cartxns/_search { "aggs&q ...
- 打造自己的程序员品牌(摘自Infoq)
John Sonmez是Simple Programmer的创始人.作者与程序员,关注于如何让复杂的事情变得简单.他是一位专业的软件开发者.架构师与讲师,感兴趣的领域包括测试驱动开发.如何编写整洁的代 ...
- BrandZ:2016年全球最具价值品牌百强榜(完整报告)
https://wppbaz.com/admin/uploads/files/BZ_Global_2016_Report.pdf Millward Brown编制的BrandZ最新排行榜(2016 B ...
- 46.颜色+品牌下钻分析时按最深层metric进行排序
主要知识点: 在做下钻分析时的排序 需求,以颜色进行bucket,这里bucket里面的doc以其各品牌的平均价格排序, GET /tvs/sales/_search { " ...
- ecshop添加商品选择品牌时如何按拼音排序
ECSHOP后台添加新商品时,有一个选择品牌的下拉框,如果品牌太多,在下拉框里查找起来很不方便. 我想给“下拉框里的品牌列表”按品牌名的拼音排序,比如有“中国水利出版社” “中国人民出版社” 这两个品 ...
- APP品牌具体有哪几个要素?又是如何操作的?
对于品牌的一些认识 首先我们要知道,品牌是由用户与公司及其产品&服务互动后所产生的,失去了与用户互动并且承认的是伪品牌,对于开发者来说,APP的品牌要先从标志与颜色考虑起,但实话实说,标志与颜 ...
- MySQL与EXCEL sum sumif sumifs 函数结合_品牌汇总_20161101
计算一些数不难,整体来说还是要培养自我的逻辑意识,逻辑清楚,代码自然而然就知道,总体上训练自己的逻辑,一个是从用户角度,一个是从产品角度. 用户角度需要考虑的是用户的活跃度,具体又可以细分为用户的注册 ...
- 我是如何一步步编码完成万仓网ERP系统的(七)产品库设计 3.品牌图片跨域上传
https://www.cnblogs.com/smh188/p/11533668.html(我是如何一步步编码完成万仓网ERP系统的(一)系统架构) https://www.cnblogs.com/ ...
随机推荐
- Robot Framework 搭建和RIDE(GUI) 的环境
在windows x64的环境上进行安装,集成Selenium2和AutoIt的libraries,以下安装步骤在win 7,win 8.1,win 10, win 2012 R2上测试通过 1. 下 ...
- [BZOJ 1691] 挑剔的美食家
[题目链接] https://www.lydsy.com/JudgeOnline/problem.php?id=1691 [算法] 不难想到如下算法 : 将所有牛和牧草按鲜嫩程度降序排序,按顺序扫描, ...
- JZOJ 1667 ( bzoj 1801 ) [ AHOI 2009 ] 中国象棋 —— DP
题目:https://jzoj.net/senior/#main/show/1667 首先,一行.一列最多只有 2 个炮: 所以记录一下之前有多少行有 0/1/2 个炮,转移即可: 注意取模!小心在某 ...
- bzoj3940
AC自动机 复习一下... 可惜又写错了 我们发现就是把单词建成ac自动机,然后把串在ac自动机上跑一遍,每到一个单词结束点就删除,删除是利用栈,每次弹出单词长度个字符就可以了 发现两个小问题,str ...
- 一个thinkphhp的聊天类,感觉还可以
<?phpnamespace Common\Controller;use Think\Controller;class HxController extends Controller{ /** ...
- 多物体运动框架案例一:多个Div的宽度运动变化
多物体运动框架,鼠标移入Div,此Div逐渐变宽,鼠标移出后,此Div逐渐缩短恢复原长度. <!doctype html> <html> <head> <ti ...
- 研磨JavaScript系列(三):函数的魔力
JavaScript的代码中就只有function一种形式,function就是函数的类型.在其他的编程语言中可能还存在Procedure或者是method等代码概念,在JavaScript中只有fu ...
- 浅谈Java中的hashcode方法以及equals方法
哈希表这个数据结构想必大多数人都不陌生,而且在很多地方都会利用到hash表来提高查找效率.在Java的Object类中有一个方法: public native int hashCode(); 根据这个 ...
- Android sensor 系统框架 (二)
连载上一篇http://www.cnblogs.com/hackfun/p/7327320.html (D) 如何加载访问.so库 在前一篇博客http://www.cnblogs.com/hackf ...
- Python语言之控制流(if...elif...else,while,for,break,continue)
1.if...elif...else... number = 23 guess = int(input('Enter an integer : ')) if guess == number: prin ...