前言
clickhouse的强大之处在于充分利用内存计算的高效性从而快速得到计算结果,尤其是对于一些需要做聚合分析、统计等场景下,clickhouse提供了一些按维度分析的函数,本文将介绍clickhouse常用的几类多维分析函数。
groupby函数
还记得在mysql中,使用sql语句进行groupby的场景吧,即对查询结果按照某个字段,或者多个字段进行分组汇聚,具有相同业务场景的数据被分到同一个组中;
在clickhouse中,也提供了groupby的功能,不过clickhouse的groupby提供了更丰富的视角,即维度对查询结果进行分组,主要包括:
- with rollup【上卷】;
- with cube【多维分析】;
- with total【统计总数】;
rollup
rollup也叫上卷,举例来说,在A表中,其中有a,b两个字段,根据字段的有序性进行group by,比如像下面这样,那么在clickhouse中即成为上卷;
group by a
group by a,b