CALCULATE 函數

已完成

CALCULATE 函式是 Power BI 中最多用途的函式之一。 下列範例顯示 CALCULATE 函式語法:

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

第一個參數中的運算式必須進行評估以傳回結果 (值),而且通常是 SUM、AVG、MIN 等彙總函式。此運算式會接著根據篩選在內容中進行評估。 這些篩選可以擴充和限制目前的評估內容。

您可以使用 CALCULATE 函式控制資料列和篩選內容。 您可以新增、移除和更新篩選。 CALCULATE 是 DAX 中許多計算的關鍵函式。

使用 CALCULATE 新增篩選

下列程式碼片段顯示如何評估總銷售額並新增飛機篩選內容的範例。

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

提示

下列程式碼片段示範如何在 Tableau 中進行相同的計算:

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

使用 CALCULATE 更新篩選

下列程式碼片段示範如何取得 「2018 Sales」 的範例,即使在年份交叉分析篩選器中選取了 2019。

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

提示

似乎沒有直接的 Tableau 對照。 若要在 Tableau 中完成此函式,您必須複製欄位、帶入補充資料來源,或在每個資料行上執行計算。

使用 CALCULATE 忽略篩選

下列程式碼片段示範如何尋找在城市交叉分析篩選器) 中選取 (「一個城市 () 的州總銷售額範例。

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

提示

您會使用 EXCLUDE LOD 運算式在 Tableau 中進行相同的計算。 請注意,此 LOD 運算式與另一個運算式在資料粒度方面不同。 使用此運算式時,您會想要從檢視中排除州,而不是州和城市:

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