在進入進階分析時,許多 Tableau 使用者一定會遇到類似這樣的計算難題:
「我想在每個產品旁邊,並排顯示該產品所屬『大類別的總銷售額』,以計算品類貢獻度。」
「我想找出每位顧客的『第一筆下單日期』,但畫布上目前放的是每個月的訂單明細。」
「我希望某個基準指標完全不受右側篩選器的影響,固定計算全公司的總營收。」
在一般的計算邏輯中,數值永遠只能跟著畫布上的維度「被動聚合」。一旦畫布粒度改變,數字就會跟著打散或合併。
為了解決這種「跨越圖表當前粒度」的計算需求,Tableau 推出了一個極具殺傷力的核心功能——LOD 詳細級別表達式(Level of Detail Expressions)。今天我們不講晦澀的資料庫術語,用最白話的思維徹底搞懂它!
一、什麼是 LOD?用「放大鏡」看資料粒度
所謂的 LOD(Level of Detail),指的就是「你看資料的精細程度(粒度)」。
粗粒度(低詳細度):全公司總營收 ➔ 只有 1 個總數字。
中粒度:四大銷售區域的營收 ➔ 4 個數字。
細粒度(高詳細度):每個顧客在各訂單的細項金額 ➔ 數萬個數字。
平常我們把欄位拖到欄或列上時,圖表就決定了當前的「檢視詳細級別(Viz LOD)」。而 LOD 表達式的作用,就是讓你「跳脫當前圖表的視野限制,自由鎖定更粗或更細的維度去運算」。
LOD 表達式只有三大關鍵字,其語法結構都包在 { } 大括號中:
{ FIXED / INCLUDE / EXCLUDE [特定維度] : 聚合函數([度量]) }
二、三大 LOD 關鍵字白話拆解
運作機制:完全無視當前圖表的視覺層級,強制依照大括號內指定的維度進行獨立計算。
經典情境:找出每位顧客的最初購買日期(Cohort 分析必備)。
{ FIXED [Customer ID] : MIN([Order Date]) }
這行公式代表:固定以每位顧客為單位,抓出他歷史上最早的下單日期。就算後續把這欄位放到年度折線圖裡,它依然牢牢記住每位顧客的初次購買時間。
2. INCLUDE(額外納入計算)
白話定義:「除了畫布上的維度外,再幫我加一個更細的維度一起算,算完再平均/加總回來。」
運作機制:在圖表當前粒度的基礎上,多納入一個較細微的維度做二次聚合。
經典情境:計算每個區域「每位顧客的平均消費金額」。
AVG({ INCLUDE [Customer ID] : SUM([Sales]) })
在只顯示「地區」的粗顆粒圖表上,先在背後細算每個人的總消費,再取平均,精準反映客單價。
3. EXCLUDE(排除計算)
白話定義:「畫布上雖然把維度切得很細,但在算這個數字時,請把某個維度當作不存在!」
運作機制:強制忽略圖表上的特定維度,往上回退到較粗的層次計算。
經典情境:明細列表旁邊顯示大類總計。
當畫布上展開了各大類內部的「子類別」,透過排除子類別,就能輕鬆在每列旁邊並排整大類的銷售額,方便相除計算佔比。
三、實戰演練:三步驟用 FIXED 做出品類佔比
我們以最常見的業務需求為例:「不靠資料表計算,直接在資料列中算出各產品在所屬大類的營收佔比。」
操作步驟:
建立大類鎖定營收(FIXED 欄位):
在左側欄位清單空白處點擊右鍵 ➔ 「建立計算欄位」。
命名為:大類別總營收。
輸入以下公式:{ FIXED [Category] : SUM([Sales]) }
點擊確定儲存。這個公式的意思是:只要商品大類(Category)相同,算出來的數字就完全固定,不管畫布再細分到什麼品項。
建立百分比計算欄位:
再次建立計算欄位,命名為:產品佔所屬大類比例。
輸入公式:SUM([Sales]) / SUM([大類別總營收])
點擊確定。在該欄位右鍵 ➔ 預設屬性 ➔ 數字格式,改為「百分比(保留 1 位小數)」。
放入畫布驗證成果:
將 Category(大類) 與 Sub-Category(子類) 拖入「列」功能架。
將 Sales(個人營收)、大類別總營收 與 產品佔所屬大類比例 拖入文字標籤。
你會看見同一個大類底下的所有子項目,旁邊的「大類別總營收」數字完全一致,佔比加總剛好 100%,輕鬆完成跨層級運算!
四、LOD 與操作順序(Order of Operations)速查
當報表加上篩選器時,很多初學者會疑惑:「為什麼我拉了篩選器,FIXED 的數字卻沒有變動?」
這是因為 Tableau 背後有嚴格的 操作順序(執行先後順序):
擷取篩選器 (Extract Filters)
資料來源篩選器 (Data Source Filters)
情境篩選器 (Context Filters) ➔ 【在此層級執行】
FIXED LOD 表達式 ➔ 【在此層級執行】
維度篩選器 (Dimension Filters)(平常拉的一般維度篩選)
INCLUDE / EXCLUDE LOD 表達式
度量篩選器 (Measure Filters)
資料表計算 (Table Calculations)