Power BI篩選某個年份顯示最近N年數據

如何在Power BI中篩選一個年份之后,顯示該年份最近N年的數據,這是一個有趣的話題,這篇文章將分享如何實現。最終實現的效果如圖1-1。

1-1

第一步:加載數據

將需要分析的數據加載到Power BI中。

第二步:做兩個日期表

其中一個日期表與事實表正常關聯,另一個日期表不與任何表做關聯。


日期表

第三步:將年份篩選器,從DM日期表2中拖到畫布中。

拖放年份到篩選器

第四步:將年份篩選器,從DM日期表中拖到右側表中。

拖放年份到表

第五步:編寫DAX并拖放到右側表中

銷售 數量 動態 最近2年 = 
VAR t1 = MAX( 'DM日期表 2'[@日期] )
VAR t2 = EDATE( t1, - 24 )
VAR t3 = 
CALCULATE(
    [銷售 數量],
    KEEPFILTERS(
        FILTER(
            ALL( 'DM日期表'[@日期] ),
            'DM日期表'[@日期] > t2 &&
            'DM日期表'[@日期] <= t1
        )
    )
)
RETURN t3

最終效果如下:


1-1

總結:

從日期表中直接使用年份作為篩選器,由于與事實表有關聯,則無法達到看非篩選年份的效果,因此新建一個日期表與事實表不做任何關聯,當從新建表DM日期表2中篩選年份時,右側表中將顯示全部年份的數據。獲取DM日期表2的最大日期,由于與事實表無關聯,因此對于右側表中每一年都將得到同一個最大日期,不會受到篩選上下文的影響。根據得到的最大日期往前進行推移,減去24個月則相當于向前推移2年。在DM日期表中篩選兩個日期之間的數據,將獲得最近2年的數據。最終結果如預期一樣正確顯示。如果需要使用DM日期表2作為該畫布頁的篩選器,則需要對被篩選的度量值做相關處理,比如使用TREATAS進行重新掛載。

?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容