2016-07-29 3 views
0

열에 case 문을 수행하기 위해 MDX 계산 계수를 사용하려고합니다. 내가이 씨는 레코드의 일부의 제목 필드에 경우에도 새로운 열에 Test2를 모든 것을 설정 저장할 때MDX 사례 문

Case [hist].[title] when "Mr" then "Test1 "Else "Test2"end 

:

이 코드를 사용하고 있습니다. 내가 잘못 될 수있는 어떤 생각?

감사

MDX에서

답변

0

당신은 말할 수 :

IIF( 
[hist].[title].CURRENTMEMBER.MEMBER_CAPTION = "Mr" 
,"Test1" 
,"Test2" 
) 

또는

:

CASE 
WHEN [hist].[title].CURRENTMEMBER.MEMBER_CAPTION = "Mr" 
    THEN "Test1" 
ELSE "Test2" 
END 

또는

CASE 
WHEN [hist].[title].CURRENTMEMBER 
    IS [hist].[title].[title].&[Mr] 
    THEN "Test1" 
ELSE "Test2" 
END 

'IIF는'기본으로 사용하는 것이 좋습니다 6,

IIF( 
[hist].[title].CURRENTMEMBER 
    IS [hist].[title].[title].&[Mr] 
,"Test1" 
,"Test2" 
) 

참고

성능면에서

: - IS 운영자는 .MEMBER_CAPTION = "Mr"
사용하는 것이 바람직하다 - IIF을 일반적으로 수행하는보다 나은 CASE - 당신의 가지 중 하나를 멀리 얻을 수있는 경우 IIFNULL이면 계산 속도가 더 빠를 것입니다.

그래서이 가장 좋은 것입니다 : 나는 같은 결과를 얻을 때

IIF( 
[hist].[title].CURRENTMEMBER 
    IS [hist].[title].[title].&[Mr] 
,"Test1" 
,NULL 
) 
+0

감사하지만 모든 레코드 rory83 확인 @ 테스트 2 – rory83

+0

을 보여 - 내 실수를 - 당신은 어느'MEMBER_CAPTION' 속성을 사용하여 필요 또는 'IS'연산자를 사용하고 연산자의 오른쪽에 'Mr'이라는 정확한 구성원을 끌어다 놓는 것이 좋습니다. 전체 이름을 추측 할 것입니다. – whytheq