【发布时间】:2015-01-29 16:22:06
【问题描述】:
我对 SSAS 很陌生,但遇到以下问题:
事实表具有度量:成本和生产。 但是在一天中的一次,我可以在事实表中有多个值,如下所示:
能源 |成本 |生产 |时间
NHU-1 通用能源 | 0.99 | 21.28 | 2013-12-01 00:15:00.000
NHU-1 通用能源 | 13.74 | 21.28 | 2013-12-01 00:15:00.000
NHU-1 通用能源 | 7.92 | 21.28 | 2013-12-01 00:15:00.000
NHU-1 通用能源 | 1.57 | 21.28 | 2013-12-01 00:15:00.000
NHU-1 通用能源 | 9.03 | 21.28| 2013-12-01 00:15:00.000
现在,我必须对名为 X 的字段进行计算。
公式是: X= sum(Cost) / Max(Production)
在这种情况下,X 的值是:
X = 33.25 / 21.28
X = 1.56
我创建了一个具有以下格式的时间维度层次结构:年/日/时间
在 DSV 中,我创建了一个命名计算:X = cost / Production,并在 Cube 中将 Production 设置为 Max 聚合类型。
当我查询多维数据集并查看时间级别的值时,这很有效,但是对于上述级别(日和年)会出现问题,因为生产仍然聚合为这些级别的最大值。我需要将生产仅聚合为时间级别的最大值,而对于其余级别,我需要将其聚合为总和。 如何在 SSAS 中实现这一目标? 我应该改用计算成员吗?
【问题讨论】:
标签: ssas olap aggregation dimension