CALCULATE függvény

Befejeződött

A CALCULATE függvény a Power BI egyik legsokoldalúbb függvénye. Az alábbi példa a CALCULATE függvény szintaxisát mutatja be:

CALCULATE( <expression>, <filter1>, <filter2>, ... )

Az első paraméterben lévő kifejezést ki kell értékelni, hogy visszaadja az eredményt (egy értéket), és általában egy aggregációs függvény, például SZUM, AVG, MIN stb. Ezt a kifejezést ezután a szűrők alapján egy kontextusban értékeli ki a rendszer. Ezek a szűrők kibonthatják és korlátozhatják az aktuális kiértékelési környezetet.

A CALCULATE függvénnyel szabályozhatja a sor- és szűrőkörnyezetet. Szűrőket adhat hozzá, távolíthat el és frissíthet. A CALCULATE a DAX számos számításának kulcsfüggvénye.

Szűrő hozzáadása a CALCULATE használatával

Az alábbi kódrészlet bemutatja, hogyan értékelheti ki a teljes értékesítést, és adhat hozzá egy repülési szűrőkörnyezetet.

Airplane Sales = CALCULATE( [Total Sales], 'Product Details'[ItemGroup] = "Airplane" )

Tipp

Az alábbi kódrészlet bemutatja, hogyan végezheti el ugyanezt a számítást a Tableau-ban:

Airplane Sales = IF [ItemGroup] = "Airplane" THEN SUM([Sales Amount] ELSE 0 END

Szűrő frissítése a CALCULATE használatával

Az alábbi kódrészlet egy példát mutat be a "2018 Sales" lekérésére, még akkor is, ha a 2019 egy évszeletelőben van kiválasztva.

2018 Sales = CALCULATE( [Total Sales], DATE[Year] = 2018 )

Tipp

Úgy tűnik, hogy a Tableau közvetlen összehasonlítása nem érhető el. A Tableau függvény végrehajtásához duplikálnia kell a mezőket, be kell állítania a kiegészítő adatforrásokat, vagy számításokat kell végeznie az egyes oszlopokon.

Szűrő figyelmen kívül hagyása a CALCULATE használatával

Az alábbi kódrészlet egy példát mutat be arra, hogyan keresheti meg az összes értékesítést azokban az államokban, amelyekben Alexandria városként van felsorolva ("Alexandria" egy városszeletelőben kiválasztott érték).

Total Sales All States = CALCULATE( [Total Sales], ALL( Geography[State] ) )

Tipp

Ugyanezt a számítást a Tableau-ban is elvégezheti az EXCLUDE LOD kifejezéssel. Figyelje meg, hogy ez a LOD-kifejezés részletessége miatt különbözik a másiktól. Ezzel a kifejezéssel az államot és a várost nem a nézetből, hanem a nézetből szeretné kizárni:

Total Sales All States = { EXCLUDE [State] : SUM([Total Sales]) }