简述
Rollup类似于mysql的视图,区别在于视图并没有将数据独立存储,视图是逻辑上的连接。而Rollup将数据独立存储了,玩的是真的。当查询命中Rollup时,会从Rollup表里获取数据,提高查询效率。
操作
创建Rollup表
sql
alter table table2 add rollup rollup_city(citycode, pv);
可以简单理解成:将table2里的citycode,pv这2个字段创建一个子表:rollup_city
当查询命中时,会从rollup_city表里查数据,提高性能
通过命令查看完成状态
sql
show alter alter rollup
查询数据
sql
select citycode, sum(pv) from table2 group by citycode;
此时命中rollup_city表,可以通过explain查看执行计划(同mysql)