【发布时间】:2016-08-16 04:56:51
【问题描述】:
仓库结构:
FactSales:...、DateKey、RefernceId、SalesAmount、.....
-
DateKey - 日期维度键, ReferenceId - 销售 ID, SalesAmount - 每次销售的销售额(不是一天)。
例如,两天内有 6 笔销售。所以在仓库中的事实表将是 6 行。
DateKey ReferenceID SalesAmount
2015-04-09 - 001 - 9
2015-04-09 - 002 - 10
2015-04-09 - 003 - 11
2015-04-10 - 004 - 12
2015-04-10 - 005 - 13
2015-04-10 - 006 - 14
DimDate: 日期键, 年, 25美分硬币, 月, 日期, ......
我有 SSAS 多维立方体,我想查询图表数据。图表 X 轴为 Date,Y 轴为 SalesAmount。
好的,我必须显示 2 天的中位数。如果我们按天造粒是没有问题的:
MEMBER [Measures].[2d median] AS
(
MEDIAN(
[Date].[Date].CurrentMember.Lag(2) :
[Date].[Date].CurrentMember.Lag(1),
[Measures].[SalesAmount])
)
在这种情况下,MDX 采用两个聚合值并计算中位数。 但是如何按 RefenceId(按每次销售)对数据进行细化?
在这种情况下,MDX 必须获取每个销售值(对于 2015-04-09 - 2015-04-10 将是 6 个值)。
我不知道如何将 Date 维度连接到 ReferenceId 维度。 我应该创建具有附加属性的新层次结构吗?
像这样:ReferenceId -> 日期 -> 月 -> 季度 -> 年。
【问题讨论】:
-
您有 ReferenceID 的维度吗?另外,为了确认我的理解,您需要独立地为每个 ReferenceID 找到两天的中位数?
-
是的,我有 ReferenceID 维度。而且,是的,我需要为每个 ReferenceID 找到两天的中位数。
标签: ssas aggregate mdx hierarchy median