CurrentOrdinal(MDX)
반복하는 동안 집합 내의 현재 반복 번호를 반환합니다.
구문
Set_Expression.CurrentOrdinal
인수
Set_Expression
집합을 반환하는 유효한 MDX(다차원 식) 식입니다.
설명
Filter(MDX) 또는 Generate(MDX) 함수와 같이 집합을 반복하는 경우 CurrentOrdinal 함수는 반복 번호를 반환합니다.
예
다음 간단한 예제에서는 CurrentOrdinal을 Generate와 함께 사용하여 집합의 위치와 함께 집합에 있는 각 항목의 이름을 포함하는 문자열을 반환하는 방법을 보여줍니다.
WITH SET MySet AS [Customer].[Customer Geography].[Country].MEMBERS
MEMBER MEASURES.CURRENTORDINALDEMO AS
GENERATE(MySet, CSTR(MySet.CURRENTORDINAL) + ") " + MySet.CURRENT.ITEM(0).NAME, ", ")
SELECT MEASURES.CURRENTORDINALDEMO ON 0
FROM [Adventure Works]
CurrentOrdinal의 실제 사용은 매우 복잡한 계산으로 제한됩니다. 다음 예제에서는 Filter 함수를 활용하기 전에 Order 함수를 사용하여 비어있지 않은 튜플의 순서를 지정하여 고유한 집합의 제품 수를 반환합니다. CurrentOrdinal 함수는 관계를 비교하고 제거하는 데 사용됩니다.
WITH MEMBER [Measures].[PrdTies] AS Count
(Filter
(Order
(NonEmpty
([Product].[Product].[Product].Members
, {[Measures].[Reseller Order Quantity]}
)
, [Measures].[Reseller Order Quantity]
, BDESC
) AS OrdPrds
, NOT((OrdPrds.CurrentOrdinal < OrdPrds.Count
AND [Measures].[Reseller Order Quantity] =
( [Measures].[Reseller Order Quantity]
, OrdPrds.Item
(OrdPrds.CurrentOrdinal
)
)
)
OR (OrdPrds.CurrentOrdinal > 1
AND [Measures].[Reseller Order Quantity] =
([Measures].[Reseller Order Quantity]
, OrdPrds.Item
(OrdPrds.CurrentOrdinal-2)
)
)
))
)
SELECT {[Measures].[PrdTies]} ON 0
FROM [Adventure Works]
참고 항목
피드백
https://aka.ms/ContentUserFeedback
출시 예정: 2024년 내내 콘텐츠에 대한 피드백 메커니즘으로 GitHub 문제를 단계적으로 폐지하고 이를 새로운 피드백 시스템으로 바꿀 예정입니다. 자세한 내용은 다음을 참조하세요.다음에 대한 사용자 의견 제출 및 보기