2014-08-28 1 views
0

저는 MDX를 처음 사용했습니다. 내 배경은 T-SQL입니다. 나는 많은 사람들이 어떤 일에 시작 (또는 완료) 어떻게 계산두 날짜 차원을 사용하는 MDX의 레코드 수

간단한 작업입니다 기본적으로 2 열

[Start Date], [Finish Date] 

20140101, -1 

20140101, 20140401 

20140301, 20140501 

... 

내가 그 열을 기반으로 레코드를 계산하는 간단한 측정을 가지고있는 사실 테이블/큐브가 , 그러나 나는 한 기간에 누적 된 총계를 알고 싶다.

위의 예를 보면 :

Month/Year, Started, Finished, CumulativeTotal 

01/2014, 2, 0, 2 

02/2014, 0, 0, 2 

03/2014, 1, 0, 3 

04/2014, 0, 1, 2 

05/2014, 0, 1, 1 

은 "-1"내 날짜 차원에서 "정의되지 않음"값에 대한 외래 키입니다. 즉, 기록이 아직 완료되지 않았으므로 시작일 이후 매월 표시되어야합니다.

어떻게하면됩니까? 나는 그것에 대한 어떤 참조도 찾을 수 없다. 또는 나는 무엇을 찾을 지 모른다 (아마도 사실).

답변

1

질문에 답하는 것을 피하지 말고 사실 테이블을 사용하여 큐브를 채우는 것은 좋지 않습니다. 당신은 스타 스키마를 만들려면, 그래서 더 나은 디자인은 다음과 같이 될 것이다 :

PersonId Month Count 
PersonId이 사람들이 테이블에 대한 외래 키

는 월은 시간 차원에 외래 키입니다 날짜 시간입니다 표, Count는 해당 달에 계산되어야하는지에 따라 1 또는 0 중 하나입니다.

원하는 테이블에서 원하는 결과를 얻으려면 직접 SQL을 사용하는 것이 좋습니다. 이것은 Cubes와 MDX가 처리해야하는 종류의 것이 아닙니다.

관련 문제