MDX:在考虑闰年的同时,如何追溯到1年前的日期?
试图提出一个查询,让我知道从今天起365天(以及2月366日之后的闰年)的日期集 以下是我目前得到的信息:MDX:在考虑闰年的同时,如何追溯到1年前的日期?,mdx,leap-year,Mdx,Leap Year,试图提出一个查询,让我知道从今天起365天(以及2月366日之后的闰年)的日期集 以下是我目前得到的信息: 在0上选择[Measures].[Revenue], 1上的非空{[Trans Date].[Year-Week-Date].[Date],PARALLELPERIOD([Trans Date].[Year-Week-Date].[Year],1[Trans Date].[Year-Week-Date]) 来自多维数据集 但这要追溯到“时间”的开始。我只需要它回到365年(或闰年366年)
在0上选择[Measures].[Revenue],
1上的非空{[Trans Date].[Year-Week-Date].[Date],PARALLELPERIOD([Trans Date].[Year-Week-Date].[Year],1[Trans Date].[Year-Week-Date])
来自多维数据集
但这要追溯到“时间”的开始。我只需要它回到365年(或闰年366年)
考虑使用滞后,但不确定它是否适合此方案。
有人对此有什么建议吗
谢谢 首先,我将重新格式化您的查询以提高可读性
SELECT [Measures].[Revenue] ON 0,
NON EMPTY
{
[Trans Date].[Year - Week - Date].[Date],
PARALLELPERIOD([Trans Date].[Year - Week - Date].[Year],
1,
[Trans Date].[Year - Week - Date])
} ON 1
FROM Cube
这里有一组完整的Date
级别([Trans-Date].[Year-Week-Date].[Date]
),另外还有来自该维度的一个成员(调用PARALLELPERIOD
的结果)
您需要的是一系列成员,这可以通过:
实现。比如说,
NON EMPTY
{
PARALLELPERIOD([Trans Date].[Year - Week - Date].[Year],
1,
[Trans Date].[Year - Week - Date].[Date].CURRENTMEMBER)
:
[Trans Date].[Year - Week - Date].[Date].CURRENTMEMBER
} ON 1
你的例子不能解释闰年,这是真的
PARALLELPERIOD
仅返回并行祖先下与给定成员具有相同序号的成员。如果没有直接通过MDX处理成员的日期值的方法,则可能需要以编程方式生成数字成员属性(例如,引用上一年成员在该日期的序号),以协助此过程。