2017-02-07 2 views
0

표 형식의 필터로 고유 수를 얻으려고합니다. Scenaria는 아래와 같습니다.DAX - 다중 열의 필터를 사용하여 개수 계산

ID ¦ProductName ¦ color ----------¦ ------------------ ¦------ 1 ¦Crankarm ¦ NA 2 ¦Bearing Ball ¦ Black 1 ¦Bearing Ball ¦ Black 3 ¦Bearing Ball ¦ Black 4 ¦Blade ¦ Black 2 ¦Crankarm ¦ Black 5 ¦Bearing Ball ¦ Black 6 ¦Bearing Ball ¦ Black 6 ¦Blade ¦ Black 7 ¦Blade ¦ Black 7 ¦Blade ¦ Black 3 ¦Blade ¦ Black 5 ¦Crankarm ¦ Black 9 ¦Decal ¦ NA

나는 'ID'의 3 가지 고유 카운트 싶어. 필터는 다음과 같습니다. 1. ProductName ='Bearing Ball' and Color = 'Black' >(ID=2,1,3,5,6 > Distinct count:5) 2. ProductName ='Blade' and Color = 'Black' >(ID=4,6,7,7,3 > Distinct count:4) 3. ProductName ='Crankarm' and Color = 'Black' >(ID=2,5 > Distinct count:2) 그리고 3 가지 고유 한 카운트 모두를 합산합니다. 내 측정의 최종 결과는 다음과 같습니다. 5 + 4 + 2 = 11

세 가지 모든 제품에 대해 아래 코드로 측정 값을 계산했습니다. 그리고 다른 척도로 3 척의 측정치를 합산 한 결과 (FinalResult : = [BB] + [BL] + [CR]). BL:= CALCULATE ( DISTINCTCOUNT (Product[ID]), FILTER ( VALUES (Product), Product[ProductName] = "Blade" && Product[Color] = "Black" ) )

CR:= CALCULATE ( DISTINCTCOUNT (Product[ID]), FILTER ( VALUES (Product), Product[ProductName] = "Crankarm" && Product[Color] = "Black" ) )

나는 때문에 추가 또는 의해 동일한 쿼리에서 서로 다른 수를 얻을 수

BB:= CALCULATE ( DISTINCTCOUNT (Product[ID]), FILTER ( VALUES (Product), Product[ProductName] = "Bearing Ball" && Product[Color] = "Black" ) ) 는 다른 제품 이름은 동일한 ID를 가질 수있다. 그리고 같은 쿼리에서 사용한다면, 나는 그것을 잃어 버릴 것입니다.

Total Count := 
CALCULATE (
    DISTINCTCOUNT ('Product'[IDNameColor]), 
    FILTER (
     ALL ('Product'), 
     ([Color] = "Black" 
      && [ProductName] = "Bearing Ball") 
      || ([Color] = "Black" 
      && [ProductName] = "Blade") 
      || ([ProductName] = "Crankarm" 
      && [Color] = "Black") 
    ) 
) 

당신은 제거 할 수 있습니다

IDNameColor = [ID] &"-"& [ProductName] & "-" & [Color] 

그런 다음 제품의 수를 얻기 위해이 같은 조치에 열을 계산 된 것을 사용

답변

0

쉬운 방법 중 하나는 다음과 같이 계산 된 열을 만드는 것입니다 ALL('Product')이 필터의 영향을 받으려면이 기능을 사용하십시오.

Aleternatively 당신이 조치가 이렇게 될 수있는 계산 된 열 생성하지 않으려면 :

Total Count := 
COUNTAX (
    FILTER (
     DISTINCT ('Product'), 
     ([Color] = "Black" 
      && [ProductName] = "Bearing Ball") 
      || ([Color] = "Black" 
      && [ProductName] = "Blade") 
      || ([ProductName] = "Crankarm" 
      && [Color] = "Black") 
    ), 
    [ID] & [ProductName] 
     & [Color] 
) 

이 도움이된다면 알려줘합니다.

+0

첫 번째 코드는 정상적으로 작동했습니다. 두 번째는하지 않았다. 고마워. –