大数据ClickHouse进阶(十三):ClickHouse的GROUP BY 子句
数据 进阶 by group ClickHouse 十三 子句
2023-06-13 09:13:53 时间
ClickHouse的GROUP BY子句
Group By子句又称聚合查询,与MySQL或者Hive中的使用方式一样,但是需要注意一点在Select查询中如果有聚合查询,例如max,min等,与聚合查询出现的字段一定要出现在Group by中,否则语句报错。
ClickHouse中的Group by 还可以配合WITH ROLLUP、WITH CUBE、WITH TOTALS三种修饰符获取额外的汇总信息。
创建表mt_tbl2 并加载数据:
#创建表mt_tbl2
node1 :) CREATE TABLE mt_tbl2
(
`province` String,
`city` String,
`item` String,
`totalcount` UInt32
)
ENGINE = MergeTree()
ORDER BY (province, city)
#向表中插入如下数据:
node1 :) insert into mt_tbl2 values ('北京','海淀','苹果手机',100),('上海','黄浦','小米手机',200),('北京','丰台','苹果手机',300),('北京','大兴','华为手机',400),('上海','嘉定','华为手机',500),('
北京','海淀','华为手机',600),('上海','黄浦','小米手机',700),('北京','大兴','苹果手机',800),('上海','嘉定','华为手机',900),('北京','海淀','小米手机',1000);
一、WITH ROLLUP
ROLLUP 能够按照聚合键从右向左上卷数据,基于聚合函数依次生成分组小计和总计。操作如下:
node1 :) select province,city,item,sum(totalcount) as total from mt_tbl2 group by province,city,item with rollup;
二、WITH CUBE
CUBE 是立方体意思,WITH CUBE会基于聚合键之间所有的组合生成小计信息。操作如下:
node1 :) select province,city,item,sum(totalcount) as total from mt_tbl2 group by province,city,item with cube;
三、WITH TOTALS
WITH TOTALS 会基于聚合键生成结果外,还会附带一行Totals汇总统计。操作如下:
node1 :) select province,city,item,sum(totalcount) as total from mt_tbl2 group by province,city,item with totals;
相关文章
- 《吐血整理》进阶系列教程-拿捏Fiddler抓包教程(14)-Fiddler断点(breakpoints)实战,篡改或伪造数据
- 【SSM进阶之路】使用Spring SqlSessionTemplate API实现查询数据[通俗易懂]
- 大数据ClickHouse进阶(八):ClickHouse的with子句
- 孙荣辛 | 大数据穿针引线进阶必看——带你盘点那些必知必会的Google经典大数据论文
- 面向接口编程的好处-介绍API数据接口的好处!
- 助力工业物联网,工业大数据之脚本开发【五】
- 大数据Flink进阶(九):集群基础环境搭建
- 大数据Flink进阶(十四):Flink On Standalone任务提交
- Spark项目之电商用户行为分析大数据平台之(二)CentOS7集群搭建详解大数据
- Java解析(读取)Json数据详解编程语言
- 间数据权限传递研究Oracle实例间数据权限传递的方法(oracle不同实例)
- MySQL筛选技术:从数据中发掘最深层次的知识(mysql筛选数据)
- 从Oracle中通过DMP导出数据(oracledmp导出)
- #新闻拍一拍# 华为正式开源数据虚拟化引擎 openLooKeng
- 库Redis:体现速度的内存数据库(redis内存数据)
- Linux意外关机:如何避免数据丢失?(linux意外关机)
- 台设计使用SQLServer前端设计实现数据可视化(sqlserver编辑前)
- MySQL只读模式——实现防止数据修改(mysql 只读模式)
- MySQL 数据回滚机制:实现安全的数据库变更(mysql回滚机制)
- 份如何有效执行Redis数据热备份(怎么做redis数据热备)
- Oracle数据不提交,出现危机(oracle不提交会怎样)
- ASP编程入门进阶(二十):ADO组件之显示数据记录
- ASP编程入门进阶(二十):ADO组件之查询数据记录