日期维度和累积月份
Posted
技术标签:
【中文标题】日期维度和累积月份【英文标题】:Date dimension and cumulative Months 【发布时间】:2016-05-10 09:58:00 【问题描述】:日期维度处于以下状态:
在SSAS
中看起来像这样:
基于此,我如何在SSAS
中使用以下内容构建层次结构 结构:
2016
Jan-Feb
Jan-Mrz
Jan-Apr
Jan-Mai
Jan-Jun
...
Jan-Apr
是 2016 年 1 月至 4 月的累计金额。
【问题讨论】:
【参考方案1】:投反对票可能是因为这是一个糟糕的维度设计。您可以通过删除所有这些 Jan-Feb 等内容、使用简单的 Date 维度并使用 PeriodsToDate 函数来获得累积聚合。
【讨论】:
是的,但我需要这个结构作为层次结构或集合,而不是计算成员......我需要过滤它 作为计算成员,我使用以下 mdx 查询:Aggregate ( PeriodsToDate ( [Date].[Hierarchy].[Year], [Date].[Hierarchy].[Month].CurrentMember ), [措施].[措施].[金额]) 如果你需要那个维度结构(虽然我无法想象为什么),你仍然不需要所有这些额外的列。一个简单的 Months 维度,带有一个额外的维度属性“YTD Description”,与 Months 具有相同的基数,将起作用。例如维度成员“April”将具有 YTD 描述属性“Jan-Apr”。然后,您可以在月份数上使用 PeriodsToDate 或 Head()。【参考方案2】:你的层次结构应该是年 -> 月 -> 日,依此类推。为了支持累积数字,将您的层次结构与包含月份范围的范围维度相结合,例如 Jan - Apr。层次结构不直接用作范围。您必须将两者结合在一起才能满足要求。
范围维度的最小值将是您的开始月份,最大值将是您在一个特定范围内的结束月份。示例维度如下
+------------+---------------------+ | DIM_Range | +------------+---------------------+ |Sur_Key | Min Value | Max Value | +------------+---------------------+ | 01 | Jan | Apr | | 02 | May | August | +------------+---------------------+
【讨论】:
以上是关于日期维度和累积月份的主要内容,如果未能解决你的问题,请参考以下文章