事件
3月31日 下午11時 - 4月2日 下午11時
最終Microsoft Fabric、Power BI、SQL 和 AI 社群主導的活動。 2025 年 3 月 31 日至 4 月 2 日。
立即註冊評估已修改 filter 內容中的數據表運算式。
CALCULATETABLE(<expression>[, <filter1> [, <filter2> [, …]]])
術語 | 定義 |
---|---|
expression |
要評估的數據表運算式。 |
filter1, filter2,… |
(選擇性)布爾表達式 or 定義 filtersorfilter 修飾詞函式的數據表運算式。 |
做為 first 參數的表達式必須是模型數據表,or 傳回數據表的函式。
Filters 可以是:
當有多個 filters時,會使用 AND邏輯運算符來評估它們。 這表示 all 條件必須在相同的 timeTRUE
。
布爾表達式 filter 是評估為 TRUE
orFALSE
的表達式。 他們必須遵守數個規則:
從 2021 年 9 月版的 Power BI Desktop 開始,下列專案也適用於:
數據表表達式 filter 會將數據表物件套用為 filter。 它可以是模型數據表的參考,但更有可能是傳回數據表物件的函式。 您可以使用 FILTER 函式來套用複雜的 filter 條件,包括布爾值 filter 表示式無法定義的條件。
Filter 修飾詞函式可讓您執行更多動作,而不只是新增 filters。 它們提供您在修改 filter 內容時的額外控制項。
功能 | 目的 |
---|---|
REMOVEFILTERS | 從單一數據表的一個 all 數據行中移除 allfilters,orfilters 從一個數據表 or 多個數據行中移除 or。 |
ALL 1、 ALLEXCEPT、 ALLNOBLANKROW | 從一個 or 多個數據行中移除 filters,or 從單一數據表的 all 數據行中移除。 |
KEEPFILTERS | 新增 filter,而不移除相同數據行上的現有 filters。 |
USERELATIONSHIP | 參與 related 數據行之間的非作用中關聯性,在此情況下,作用中關聯性會自動變成非作用中。 |
CROSSFILTER | 修改 filter 方向(從兩者到單一,or 從單一到兩者)or 停用關聯性。 |
1ALL 函式 and 其變體的行為,and 做為傳回數據表物件的函式 filter 修飾詞。 If 工具支援 REMOVEFILTERS 函式,最好使用它來移除 filters。
values的數據表。
提供 filter 表示式時,CALCULATETABLE 函式會將 filter 內容修改為 evaluate 表達式。 針對每個 filter 表示式,當 filter 表示式 not 包裝在 KEEPFILTERS 函式中時,會有兩個可能的標準結果:
在匯出數據行中使用 or 數據列層級安全性 (RLS) 規則時,支援此函式 not 用於 DirectQuery 模式。
下列範例會使用 CALCULATETABLE 函式來取得 2006 年因特網銷售 sum。 這個 value 後來用來 calculate 與2006年 yearall 銷售額相比,因特網銷售的比例。
下列公式:
= SUMX(
CALCULATETABLE(
'InternetSales_USD',
'DateTime'[CalendarYear] = 2006
),
[SalesAmount_USD]
)
結果如下表:
數據列標籤 | 因特網SalesAmount_USD | CalculateTable 2006 因特網銷售 | 因特網銷售與2006比率 |
---|---|---|---|
2005 | $2,627,031.40 | $5,681,440.58 | 0.46 |
2006 | $5,681,440.58 | $5,681,440.58 | 1.00 |
2007 | $8,705,066.67 | $5,681,440.58 | 1.53 |
2008 | $9,041,288.80 | $5,681,440.58 | 1.59 |
總計 | $26,054,827.45 | $5,681,440.58 | 4.59 |
事件
3月31日 下午11時 - 4月2日 下午11時
最終Microsoft Fabric、Power BI、SQL 和 AI 社群主導的活動。 2025 年 3 月 31 日至 4 月 2 日。
立即註冊