2011-04-29 2 views
0

다른 차원의 다른 멤버와 링크가있는 특정 멤버를 한 차원에서 제외하는 방법이 궁금합니다 ... 상태가있는 클라이언트 (dim_clients)를 제외하려고합니다. A OR 상태 B (dim_status). 나는 그 클라이언트를 얻기 위해 2 차원을 교차 결합하는 방법을 알고 있지만 EXCEPT 함수가 동일한 차원에서 두 세트를 허용하기 때문에 계산에서 제외하는 방법을 알아낼 수는 없지만 제외시키고 자하는 것은 교차 결합의 결과입니다. 내가 [Clients]이 무엇인지 너무 잘 모르겠습니다MDX - mdx에서 특정 멤버를 제외하는 방법

SELECT Measure.MyMeasure ON 0 
FROM MyCUBE 
WHERE 
EXCEPT([DIM CLIENTS].[Clients], [EXCLUDED CLIENTS]) 

감사

답변

1
SELECT Measure.MyMeasure ON 0 
FROM MyCUBE 
WHERE 
EXCEPT([DIM CLIENTS].[Clients], Filter({[DIM CLIENTS].[Clients]},[DIM_STATUS].CurrentMember IS [DIM_STATUS].statusA OR [DIM_STATUS].CurrentMember IS [DIM_STATUS].statusA)) 

: 동작, 내가 이런 걸 원하는 기능

를 제외하고는 사용할 수 없습니다. 나는 회원들을 사용합니다.

0

는 당신이 바로 그 차원으로 제외 클라이언트의 설정을 얻을 수있는 Extract() 기능을 사용할 수 있습니다 :

where - Extract({ [EXCLUDED CLIENTS] }, [DIM CLIENTS].[Clients]) 

주에게 단항 연산자를 작동 제외하고 수행 할 수 있습니다.

관련 문제