Power BI - 篩選上下文(context)與CALCULATE函數的計算概念

更新 發佈閱讀 4 分鐘

目錄

  1. 篩選上下文是什麼
  2. CALCULATE()
  3. Excel樞紐分析表的明細表
  4. 簡單來說


  1. 篩選上下文是什麼
    • 篩選上下文是來自於英文單字「context」,本意是語境、前後關係、文章的上下文
    • 如果我們才剛開始接觸,可以先把篩選上下文想像成是經過了篩選之後的環境、整體情況
    • 實際上,篩選上下文是數據模型中的基礎表經過所有篩選器的交互之後,最終得到的可見數據(先看過就好,後面再慢慢理解)
      • 基礎表:數據模型中存在的表
      • 篩選器:可以想像成是篩選的條件
      • 可見數據:參與計算的數據
  1. CALCULATE()
    • CALCULATE()是貫穿DAX語法的最重要的函數,讓我們看看CALCULATE()跟篩選上下文之間的關係吧
    • CALCULATE()的作用:在已修改的篩選上下文中計算第一個參數的表達式
    • CALCULATE()的參數
      CALCULATE(<expression>[, <filter1> [, <filter2> [,]]])
      • 第一參數是我們要計算的表達式,被稱為計算器參數
      • 第二參數是可選可重複的,這些參數被稱為內部篩選器參數
    • 下面我們試著以例子來看看CALCULATE()的參數使用方式,如果我們有一個表,是一個人在2022年下半年的支出部分數據,如圖
    raw-image
    • 如果我們只放第一參數
      // CALCULATE(<表達式>)
      量值1 = CALCULATE(SUM('支出'[交易金額]))
      • 我們要計算的表達式,即是對交易金額做加總
      • 這時在Power BI中使用資料表這個視覺效果,放入一級分類與量值1
      raw-image
    • 如果我們再放入第二參數
      // CALCULATE(<表達式>, <內部篩選器>)
      量值2 = CALCULATE(SUM('支出'[交易金額]), '支出'[日期] >= DATE(2022, 10, 1))
      • 我們一樣要計算交易金額的加總,而這個計算會是基於日期在2022-10-01之後的數據來做計算的
      • 將量值2放入資料表
      raw-image
    • 實際上,量值是在放入了視覺效果中才會開始計算的,也就是CALCULATE()是在放入了視覺效果中才開始計算的,內部篩選器會與外部計值環境交互後生成了篩選上下文,在這個已修改的篩選上下文中計算第一參數的表達式
      • 外部計值環境:對某個函數而言,在其開始計算時就已經存在的計值環境
    • 我們試著以例子來看看CALCULATE()與篩選上下文的關係
      • 以量值2在一級分類為交通的那一列(row)為例,如圖中紅框
      raw-image
      • 在這邊再展示一次量值2的程式碼,以方便觀看下列的步驟
        // CALCULATE(<表達式>, <內部篩選器>)
        量值2 = CALCULATE(SUM("支出"[交易金額]), "支出"[日期] >= DATE(2022, 10, 1));
      1. 對於CALCULATE()來說,外部計值環境只有一個篩選器為'支出'[一級分類] = "交通",其來自於資料表的列標籤
        • 初始篩選器:資料表(矩陣)的列標籤、篩選窗格、交叉分析篩選器、圖表聯動(順帶一提,之後的篇章會再多做提及)
      2. 對於CALCULATE()來說,內部篩選器只有一個篩選器為'支出'[日期] >= DATE(2022, 10, 1)
      3. 這時候所有的篩選器交互,也就是內部篩選器會與外部計值環境的篩選器交互,成為篩選器組合為'支出'[一級分類] = "交通" && '支出'[日期] >= DATE(2022, 10, 1)
      4. 篩選器組合會對數據模型中的基礎表做篩選,得出最終的可見數據,也就是已修改的篩選上下文
      5. 在已修改的篩選上下文中計算第一個參數的表達式SUM('支出'[交易金額])
      6. 因此一級分類為交通的那一列,在量值2的數值即為1420
  2. Excel樞紐分析表的明細表
    • 在Excel中,如果我們對樞紐分析表的單元格雙擊就會出現明細表,其實就是該單元格的篩選上下文
      1. 建立樞紐分析表
        raw-image
      2. 在樞紐分析表中的單元格以滑鼠雙擊
        raw-image
      3. 雙擊後跑出來的明細表,其實就是樞紐分析表中我們所雙擊的單元格的篩選上下文,也就是該單元格最終的可見數據,因此對交易金額做加總後會得到1420
        raw-image
  3. 簡單來說
    • 篩選上下文:數據模型中的基礎表經過所有篩選器的交互之後,最終得到的可見數據
    • CALCULATE():在已修改的篩選上下文中計算第一個參數的表達式
留言
avatar-img
林正偉的沙龍
1會員
1內容數
你可能也想看
Thumbnail
創作不只是個人戰,在 vocus ,也可以是一場集體冒險、組隊升級。最具代表性的創作者社群「vocus 野格團」,現在有了更強大的新夥伴加入!除了大家熟悉的「官方主題沙龍」,這次我們徵召了 8 位領域各異的「個人主題專家」,將再度嘗試創作的各種可能,和格友們激發出更多未知的火花。
Thumbnail
創作不只是個人戰,在 vocus ,也可以是一場集體冒險、組隊升級。最具代表性的創作者社群「vocus 野格團」,現在有了更強大的新夥伴加入!除了大家熟悉的「官方主題沙龍」,這次我們徵召了 8 位領域各異的「個人主題專家」,將再度嘗試創作的各種可能,和格友們激發出更多未知的火花。
Thumbnail
vocus 最具指標性的創作者社群──「野格團」, 2026 年春季,這支充滿專業、熱情的團隊再次擴編,迎來了 8 位實力堅強的「個人主題專家」新成員 💫💫💫 從投資理財、自我成長、閱讀書評到電影戲劇,他們各自帶著獨特的「創作超能力」準備在格友大廳與大家見面。
Thumbnail
vocus 最具指標性的創作者社群──「野格團」, 2026 年春季,這支充滿專業、熱情的團隊再次擴編,迎來了 8 位實力堅強的「個人主題專家」新成員 💫💫💫 從投資理財、自我成長、閱讀書評到電影戲劇,他們各自帶著獨特的「創作超能力」準備在格友大廳與大家見面。
Thumbnail
Excel 是辦公室必備的軟體之一,無論是企業、小商家或是個人,都可能會用到 Excel 來整理資料。在整理資料時,我們常常需要統整大量的數據,並加上單位符號,才能讓資料更完整、易懂。今天就來教大家一個簡單的 Excel 小技巧,利用公式就能輕鬆在統整的數據資料上加上單位符號。
Thumbnail
Excel 是辦公室必備的軟體之一,無論是企業、小商家或是個人,都可能會用到 Excel 來整理資料。在整理資料時,我們常常需要統整大量的數據,並加上單位符號,才能讓資料更完整、易懂。今天就來教大家一個簡單的 Excel 小技巧,利用公式就能輕鬆在統整的數據資料上加上單位符號。
Thumbnail
在職場上,Excel 是許多人必備的工具之一。它可以用來處理各種數據,包括統計、分析、報表等。在處理數據時,求和是常見的操作之一。然而,如果我們想要在篩選項目更改時,總和資料也隨機變動,該怎麼做呢?
Thumbnail
在職場上,Excel 是許多人必備的工具之一。它可以用來處理各種數據,包括統計、分析、報表等。在處理數據時,求和是常見的操作之一。然而,如果我們想要在篩選項目更改時,總和資料也隨機變動,該怎麼做呢?
Thumbnail
Excel 是工作中常用的表格軟體,用來整理和分析數據。在日常工作中,我們經常會遇到需要對數據進行分組求和的情況,例如,根據產品類別、客戶地區、銷售人員等進行分組求和。按傳統方法,需要手動將數據分組,再進行計算,非常耗時。今天,我們就來學習一個 Excel 技巧,教大家如何快速分組求和。
Thumbnail
Excel 是工作中常用的表格軟體,用來整理和分析數據。在日常工作中,我們經常會遇到需要對數據進行分組求和的情況,例如,根據產品類別、客戶地區、銷售人員等進行分組求和。按傳統方法,需要手動將數據分組,再進行計算,非常耗時。今天,我們就來學習一個 Excel 技巧,教大家如何快速分組求和。
Thumbnail
EXCEL資料在建立或是填入時,可以的話最好將文字與會被計算的數字分開欄位填寫,這樣資料未來統計與分析上比較不會有問題,因為文字與數字在同一儲存格中並存,是無法直接進行計算的。 下面舉一個例子,重陽節的時候有購買了一些物品,這些物品名稱與金額都一起填入了相同的儲存格中,這樣會發現SUM要加總時會直
Thumbnail
EXCEL資料在建立或是填入時,可以的話最好將文字與會被計算的數字分開欄位填寫,這樣資料未來統計與分析上比較不會有問題,因為文字與數字在同一儲存格中並存,是無法直接進行計算的。 下面舉一個例子,重陽節的時候有購買了一些物品,這些物品名稱與金額都一起填入了相同的儲存格中,這樣會發現SUM要加總時會直
Thumbnail
篩選上下文是什麼 CALCULATE() Excel樞紐分析表的明細表 簡單來說
Thumbnail
篩選上下文是什麼 CALCULATE() Excel樞紐分析表的明細表 簡單來說
Thumbnail
網友提問的需求,要將左邊的表個項目的數量,變成右邊的表格,該如何快速完成呢? 這個需求可以用函數來處理,不過不同版本的函數處理方式不同,除了函數之外用POWER QUERY也是很快的哦。 POWER QUERY教學連結 全版本通用 全版本通用需要輔助欄協助才能做到 C1=0 C2=B2+
Thumbnail
網友提問的需求,要將左邊的表個項目的數量,變成右邊的表格,該如何快速完成呢? 這個需求可以用函數來處理,不過不同版本的函數處理方式不同,除了函數之外用POWER QUERY也是很快的哦。 POWER QUERY教學連結 全版本通用 全版本通用需要輔助欄協助才能做到 C1=0 C2=B2+
Thumbnail
而本篇要介紹的為以下三組函數: COUNT , COUNTIF, COUNTIFS, COUNTA AVERAGE, AVERAGEIF, AVERAGEIFS, AVERAGEA SUM, SUMIF, SUMIFS, SUMA
Thumbnail
而本篇要介紹的為以下三組函數: COUNT , COUNTIF, COUNTIFS, COUNTA AVERAGE, AVERAGEIF, AVERAGEIFS, AVERAGEA SUM, SUMIF, SUMIFS, SUMA
Thumbnail
遇懶預覽專用第一段:"=subtotal(3,$B$2:B2)",如果還是不確定怎麼用的話請繼續往下看;本文適用於Apple Numbers、Google Spreadsheet以及Microsoft Office Excel,不負責任主觀判定實用度為87%,使用頻率也是87%,難易度則是8.7%。
Thumbnail
遇懶預覽專用第一段:"=subtotal(3,$B$2:B2)",如果還是不確定怎麼用的話請繼續往下看;本文適用於Apple Numbers、Google Spreadsheet以及Microsoft Office Excel,不負責任主觀判定實用度為87%,使用頻率也是87%,難易度則是8.7%。
Thumbnail
你知道 SELECT 除了回傳欄位、使用聚集函數外,還可以更進一步做加減乘除喔!這個系列是 QUERY 函式大解析的第六篇文章,如果還不知道什麼是 QUERY 的話,我還是很建議你從第一篇慢慢看、跟著我們的練習實際操作,就會更有概念囉~
Thumbnail
你知道 SELECT 除了回傳欄位、使用聚集函數外,還可以更進一步做加減乘除喔!這個系列是 QUERY 函式大解析的第六篇文章,如果還不知道什麼是 QUERY 的話,我還是很建議你從第一篇慢慢看、跟著我們的練習實際操作,就會更有概念囉~
Thumbnail
今天要介紹的是進階的 SELECT 功能,可以即時對 QUERY 的結果運算,迅速取得數值的平均、總和、最大值、最小值和數量,省去拉資料透視表(pivot table)的麻煩!
Thumbnail
今天要介紹的是進階的 SELECT 功能,可以即時對 QUERY 的結果運算,迅速取得數值的平均、總和、最大值、最小值和數量,省去拉資料透視表(pivot table)的麻煩!
追蹤感興趣的內容從 Google News 追蹤更多 vocus 的最新精選內容追蹤 Google News