2016-03-23 11 views
0

Ich habe ein Modell von 3 Tabellen:DAX zwischen (nicht direkt) verbunden Tabellen

enter image description here

Ich mag die Anzahl der Jahre berechnen ein Pilot aktiv war (dh mindestens 1 Flug pro Jahr, unabhängig davon, wie viele Flüge):

enter image description here

ich dachte, dass der PilotName zusammen mit der unten DAX Maßnahme ziehen würde mein Problem lösen, aber es funktioniert nicht:

Years Active:=COUNT(Season[SeasonId]) 

Ist es möglich, dies ohne eine eindeutige Zählung zu erreichen?

Antwort

0

Eine Lösung zusammenfassen könnte, erstellen Sie mir Ihre Situation auf meinen excel, einige Komplikationen zu schaffen:

enter image description here

Wie Sie i indroduce Einige Flightlanded = 0 und für gleichen Piloten und Saison-ID 2 verschiedene sehen Reihen. Ich erstelle Ihre Maßnahme (Jahre aktiv alt) und meine Maßnahme:

Years Active:=calculate(COUNTX(summarize(tableflight,tableflight[Seasonid],tableflight[PilotPK]),tableflight[Seasonid]),filter(tableflight,tableflight[Flightlanded]=1)) 

Diese Formel nicht Distinct Count verwenden und 2 Problem beantworten kann:

  1. gleiche Reihe mit anderem Wert
  2. Eine Zeile, das wir wollen nicht berücksichtigen (Flug = 0)
+0

Danke für die Antwort! Nachdem ich Ihren Code verstanden habe, habe ich COUNTX() für COUNTROWS() geändert und bekomme das gleiche Ergebnis. Sollte COUNTROWS() eine bessere Leistung bieten? – Victor