- DAX設計模式(第2版)
- (意)阿爾貝托·法拉里等
- 802字
- 2022-12-20 18:38:57
2.1 時間智能計算介紹
為了使用所有時間智能計算,你需要一個格式正確的日期表(Date表)。該Date表必須滿足以下要求。
● 必須具備年份中的所有日期。該Date表必須始終始于1月1日、終于12月31日,并包括此日期范圍內(nèi)的所有天。如果報告僅采用會計年度,則Date表必須包含從會計年度的第一天到最后一天的所有日期。例如,如果2008會計年度始于2007年7月1日,則Date表必須包括從2007年7月1日到2008年6月30日的所有天。
● 必須具有包含數(shù)據(jù)類型為“日期/時間”或“日期”的不重復值的列。該列通常命名為Date。盡管Date列通常用于定義與其他表的關系,但這不是強制的。不過,Date列必須包含不重復值,并應為其應用“標記為日期表”功能。如果該列還包含時間部分,則不應使用時間——例如,時間應始終為12:00 am。
● 模式中的Date表必須標記為Date表,以防沒有基于Date而與其他表(如示例中的Sales)建立聯(lián)系。[1]
[1] 對于符合Date表要求且位于一對多關系一端的Date表,不將其標記為Date表,它也會自動具備Date表的特性。——譯者注
創(chuàng)建Date表的方法有以下幾種。只要Date表滿足要求,創(chuàng)建Date表的方式就不會影響你使用標準時間智能計算。如果你已經(jīng)有一份符合報告需要的Date表,則只需在確保該表可以滿足最低要求后,便可將其導入并將其標記為Date表。如果沒有Date表,則可以使用DAX計算表來創(chuàng)建(后面會做介紹)。
最佳做法是對用于時間智能計算的Date表應用“標記為日期表”設置。“標記為日期表”設置會在每次對Date列應用篩選器時,在Date表上增加一個REMOVEFILTERS修飾符。用于CALCULATE的所有時間智能函數(shù)都會執(zhí)行此操作(對Date列應用篩選器)。如果你使用Date列定義Sales表和Date表之間的關系,則DAX會執(zhí)行相同的操作。盡管如此,將“標記為日期表”設置應用于Date表依然是最佳做法。如果你有多個Date表,則可以將它們?nèi)繕擞洖槿掌诒怼?/p>
如果你沒有采用“標記為日期表”設置,而且也沒有使用Date列來建立關系,那么每當你在CALCULATE中使用時間智能函數(shù)時,都必須在Date表上增加一個REMOVEFILTERS。SQLBI官網(wǎng)中的“Time Intelligence in Power BI Desktop”一文對此進行了詳細描述。
- Vulkan學習指南
- 對比Excel,輕松學習SQL數(shù)據(jù)分析
- SolidWorks2014基礎實例教程
- DSP開發(fā)寶典
- UG NX 完全實例解析
- iPhone Applications Tune/Up
- Illustrator 2024從入門到精通
- Premiere Pro CC 2018基礎教程(第3版)
- Liferay Portal Systems Development
- Photoshop CS6完美創(chuàng)意設計:不一樣的圖像藝術處理
- Photoshop CC完全自學教程:從入門到實踐(全新版)
- Vue.js實戰(zhàn)
- 剪映真?zhèn)鳎?8招玩轉(zhuǎn)短視頻剪輯
- Photoshop CS6淘寶美工完全實例教程(培訓教材版)
- Photoshop后期強:多重曝光專業(yè)技法寶典