如何从 groupby OLAP Cube 中删除小计?

Posted

技术标签:

【中文标题】如何从 groupby OLAP Cube 中删除小计?【英文标题】:How to remove subtotals from groupby OLAP Cube? 【发布时间】:2021-12-07 18:29:46 【问题描述】:
select Field1,DatePart(Year,aDate) aDate,count(distinct Employee) EmployeeCount from  dbo.myTable with (nolock)   group by cube(Field1,DatePart(Year,aDate))  order by EmployeeCount desc

输出

Field aDate  EmployeeCount
 01-    2012 27166
 NULL   2012 27166
 NULL   NULL 27166 

过滤器显示字段不为空。为什么在使用多维数据集时我会在 EmployeeCount 输出中得到一个字段 NULL?

我想通了。多维数据集包括列为空的小计和总计

有没有一种简单的方法可以删除多维数据集结果中的汇总值

【问题讨论】:

【参考方案1】:

通过分组集合使用分组,它允许您选择聚合级别或集合

select Field1,DatePart(Year,aDate) Year,count(distinct Employee) EmployeeCount from  dbo.aTable with (nolock)  
group by grouping sets((Field1,DatePart(Year,aDate))

this is equivalent to
group by Field1, DatePart(Year,aDate)

【讨论】:

以上是关于如何从 groupby OLAP Cube 中删除小计?的主要内容,如果未能解决你的问题,请参考以下文章

如何将业务逻辑编程到 OLAP Cube 中?

使用 Python 连接到 SSAS OLAP Cube

Where - OLAP Cube 中的 In 子句

在 Excel 中使用 VBA,如何获取服务器上所有 OLAP Cube 的名称?

通过 Silverlight 连接到 OLAP Cube

在 Snowflake 中构建 OLAP Cube