PeriodsToDate (MDX)

按照时间维度中的指定级别的约束,从给定成员所在的级别返回一组同级成员,从第一个同级成员开始,到给定成员结束。

语法

PeriodsToDate( [ Level_Expression [ ,Member_Expression ] ] )

参数

  • Level_Expression
    返回级别的有效多维表达式 (MDX)。

  • Member_Expression
    返回成员的有效多维表达式 (MDX)。

注释

在指定级别的范围内,PeriodsToDate 函数将返回与指定成员处于同一级别、从第一个期间开始到指定成员结束的期间集。

  • 如果指定了级别,则层次结构的当前成员是指 hierarchy.CurrentMember,其中 hierarchy 是指定级别的层次结构。

  • 如果级别和成员都未指定,则级别是 Time 类型维度的当前成员 (Time.CurrentMember) 的父级别。

PeriodsToDate( Level_Expression, Member_Expression ) 的功能与以下 MDX 表达式相同:

TopCount(Descendants(Ancestor(Member_Expression, Level_Expression), Member_Expression.Level), 1):Member_Expression

示例

下面的示例从 Adventure Works 多维数据集中返回 Measures.[Order Quantity] 成员在 2003 日历年前八个月(包含在 Date 维度中)内的聚合值。

WITH MEMBER [Date].[Calendar].[First8Months2003] AS
    Aggregate(
        PeriodsToDate(
            [Date].[Calendar].[Calendar Year], 
            [Date].[Calendar].[Month].[August 2003]
        )
    )
SELECT 
    [Date].[Calendar].[First8Months2003] ON COLUMNS,
    [Product].[Category].Children ON ROWS
FROM
    [Adventure Works]
WHERE
    [Measures].[Order Quantity]

下面的示例聚合了 2003 日历年第二半期的前两个月。

WITH MEMBER [Date].[Calendar].[First2MonthsSecondSemester2003] AS
    Aggregate(
        PeriodsToDate(
            [Date].[Calendar].[Calendar Semester], 
            [Date].[Calendar].[Month].[August 2003]
        )
    )
SELECT 
    [Date].[Calendar].[First2MonthsSecondSemester2003] ON COLUMNS,
    [Product].[Category].Children ON ROWS
FROM
    [Adventure Works]
WHERE
    [Measures].[Order Quantity]