介绍PostgreSQL CUBE

编程入门 行业动态 更新时间:2024-10-24 15:25:11

介绍<a href=https://www.elefans.com/category/jswz/34/1770967.html style=PostgreSQL CUBE"/>

介绍PostgreSQL CUBE

介绍PostgreSQL CUBE

本文我们学习如何使用PostgreSQL CUBE生成多个分组结果集。

PostgreSQL CUBE概述

PostgreSQL CUBE是Group By子句的子句。Cube可以生成多个分组集。分组集是一组用于分组列的集合。下面列出cube子句的语法:

SELECTc1,c2,c3,aggregate (c4)
FROMtable_name
GROUP BYCUBE (c1, c2, c3);
  • 首先,cube子句在select语句中的group子句中
  • 其次,在select列表中,指定想分析列(维度或维度列)和聚集函数表达式
  • 第三,在Group by子句中,通过cube子句的参数指定维度列

查询会生成所有可能在cube中指定基于维度列的分组集合。cube子句是定义多个分组集的简化方式,请看下面示例:

CUBE(c1,c2,c3) GROUPING SETS ((c1,c2,c3), (c1,c2),(c1,c3),(c2,c3),(c1),(c2),(c3), ()) 

通常情况下,如果在cube中指定列的数量是n,则会有2的n次方个组合。PostgreSQL 可以执行部分cube减少聚集计算量,语法如下:

SELECTc1,c2,c3,aggregate (c4)
FROMtable_name
GROUP BYc1,CUBE (c1, c2);

PostgreSQL CUBE示例

这里使用sales表,示例如下:

查询使用cube子句生成多个分组集合:

SELECTbrand,segment,SUM (quantity)
FROMsales
GROUP BYCUBE (brand, segment)
ORDER BYbrand,segment;

查询结果:

部分cube查询示例:

SELECTbrand,segment,SUM (quantity)
FROMsales
GROUP BYbrand,CUBE (segment)
ORDER BYbrand,segment;

查询结果如下:

总结

我们学习了PostgreSQL CUBE生成多个分组结果集。

更多推荐

介绍PostgreSQL CUBE

本文发布于:2024-02-11 03:36:28,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1678923.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:PostgreSQL   CUBE

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!