2017-04-05 15 views
0

간단 할 수도 있지만 도움이 필요합니다.여러 기준을 기반으로 한 DAX 카운트 발생

하위 이벤트 유형 = 유형 A 일 때 모든 고유 ID에 대한 고유 한 하위 이벤트의 총 개수를 포함하는 원시 데이터에 열을 추가해야하며 그 결과는 첫 번째 유형 A에 표시되어야합니다. 해당 ID에 대한 나머지 줄에 목록을 표시하고 0을 표시합니다.

가 잘하면 모형 테이블 예를 들어 내 원시 데이터가 어떻게 구성되어 있는지 설명 할 수 있고 내가 결과로 필요 (COLUMN J)

Table Example

답변

0

트릭해야 다음 계산 된 열 :

Type A Events by ID = 
VAR FirstRow = 
CALCULATE(
    MIN('Log'[Index]), 
    FILTER('Log', 'Log'[ID] = EARLIER('Log'[ID]) && 'Log'[Sub Event Type] = "Type A") 
) 
RETURN 
IF(
    'Log'[Index] = FirstRow, 
    CALCULATE(
     DISTINCTCOUNT('Log'[Sub Event]), 
     FILTER('Log', 'Log'[ID] = EARLIER('Log'[ID]) && 'Log'[Sub Event Type] = "Type A") 
    ), 
    0 
) 

첫 번째 유형 A 행을 어떻게 찾았는지 모르므로 색인 열을 추가하고 최소 색인을 가진 규정 된 행을 검색했습니다. 이 첫 번째 행의 경우

는 그 다음이 같은 IDSub Event TypeSub Event의 고유 한 카운트를 반환 할 수 있습니다 (즉, FirstRow가하고있는 무엇을), 그렇지 않으면 0

명확히하거나 수정 자유롭게 돌아, A 형이다 그것은 당신의 경우에 맞게.

결과 :

result

+0

안녕 @Marcelo 귈라이가 결국 문제를 해결합니까? –

+0

안녕하세요, 제안 된 솔루션은 내가 불행히도 테스트를 위해 사용한 작은 데이터 세트에서 작동합니다.이 작업을 스케일링 할 때 너무 느립니다 ... 지금까지 데이터를 일부 파티션에서 사용하여 작업을 완료했습니다. 감사합니다. –