MDX:如何根据月份的最后一天计算月份中的天数和年份中的天数

时间:2018-12-03 15:05:31

标签: ssas mdx

我的日期维度仅包含每个月的最后一天,因此我无法计算每个月的孩子数,因为它始终为1,并且每年也存在相同的问题。

因此,对于给定的Date成员,我将需要计算该月的天数和该年的天数。

2 个答案:

答案 0 :(得分:0)

如果我是您,我将从头开始,并在表格日期(按维度使用)中添加所需的列。

该月的天:1,2,3,..,30,31

这一年的日:1,2,..,365/366

然后,我将根据需要创建属性尺寸。

最后,请不要忘记修改属性关系

答案 1 :(得分:0)

由于您的日期维度只有每个月的最后一天,因此我假设您的所有事实值都绑定到月份的最后日期。计算天数的最简单方法是添加一列,其中包含基于日期的特定月份的天数。例如,对于1月31日,您在2月28日的列中显示31,表示28。

保留此新的天数属性。 现在要显示一个月中的天数,您需要一个像这样的计算量度。

WITH MEMBER [Measures].[DateValue] AS [Date].[Day of Month].CurrentMember.Properties ("Member_Value",TYPED)

现在显示每年可以使用此度量的od天数,如下所示:

WITH MEMBER [Measures].[DateValueYear] Sum (Date].[Year].CurrentMember,[Measures].[DateValue])