大家都知道,DAX函數中的度量值,自身已經具備篩選功能,但有時我們不希望被自動篩選,并且還要進行逐級的累加求和,這在DAX函數中怎麼實現呢?
例如我們有3款産品,從21年3月份開始持續銷售,我們按日期維度展示銷量;
首先創建度量值,銷量 = sum('銷售數據'[銷售數量])
按日期維度制作趨勢圖,無論是“月度”或者“季度”,度量值都會自動計算當前日期維度篩選後的總量;
按月度統計
按季度統計
當我們希望算累加值時,SUM函數就無法單獨滿足了,此時需要同時使用Calculate函數,All函數,Filter函數;
Calculate函數【作用:篩選,返回:按一定條件篩選後的值】
語法:Calculate(度量值 or 表達式,條件)
ALL函數【作用:清除篩選,返回:清除篩選後的表格或列】
語法:ALL('表名稱'[列名稱])
Filter函數【對篩選的表進行橫向的逐行掃描,也叫叠代函數】
語法:Filter(表,條件)
綜合以上幾個函數,我們再創建度量值進行累加求和
累加銷售 = CALCULATE('度量值'[銷量],FILTER(ALL('銷售數據'[銷售日期]),'銷售數據'[銷售日期] <= MAX('銷售數據'[銷售日期])))
累加銷售趨勢
在Excel表中,累加求和隻需要新增一列,然後在每一個單元格寫入求和公式,這在少量數據時很容易實現!
但進行幾百萬,幾千萬的大數據分析時,Excel就無法滿足了,并且Excel本身錄入很多公式時,會非常占用内存,導緻Excel使用起來又卡又慢。當你學會使用以上DAX函數後,就可以快速在Power BI中得到結果;
當然,有時候累加求和也隻是一個中間值,實際數據分析中,我們會以累加求和的值作為分母,計算累計占比,然後通過不同維度進行比例分析。
,更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!