Поделиться через


PeriodsToDate (многомерные выражения)

Изменения: 17 июля 2006 г.

Возвращает набор элементов с общим родителем, находящихся на том же уровне, что и данный элемент, начиная с первого такого элемента и заканчивая данным элементом, в соответствии с ограничениями заданного уровня в измерении Time.

Синтаксис

PeriodsToDate( [ Level_Expression [ ,Member_Expression ] ] )

Аргументы

  • Level_Expression
    Допустимое многомерное выражение, возвращающее уровень.
  • Member_Expression
    Допустимое многомерное выражение, возвращающее элемент.

Замечания

В области действия заданного уровня функция PeriodsToDate возвращает набор периодов на том же уровне, что и указанный элемент, начиная с первого периода и заканчивая указанным элементом.

  • Если уровень указан, текущий элемент иерархии определяется в виде иерархия.CurrentMember, где иерархия является иерархией указанного уровня.
  • Если ни уровень, ни элемент не указан, используется уровень родителя текущего элемента измерения типа Time (Time.CurrentMember).

Функция PeriodsToDate( Level_Expression, Member_Expression ) функционально эквивалентна следующему многомерному выражению:

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

Примеры

В следующем примере возвращается сумма элемента Measures.[Order Quantity] за первые восемь месяцев 2003 календарного года, содержащихся в измерении Date куба Adventure Works.

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]

См. также

Справочник

TopCount (многомерные выражения)
Справочник по функциям многомерных выражений (многомерные выражения)

Справка и поддержка

Получение помощи по SQL Server 2005

Журнал изменений

Версия Журнал

17 июля 2006 г.

Измененное содержимое
  • Обновлены синтаксис и аргументы для облегчения понимания.
  • Добавлены обновленные примеры.