PowerPivot for Excel - 數據倉庫中的查找表

我列出的關於PowerPivot for Excel的最重要的功能之一是能夠將查找表添加到數據集中。 大多數情況下,您正在使用的數據並不包含您分析所需的每個字段。 例如,您可能有一個日期字段,但需要按季度對數據進行分組。 您可以編寫一個公式,但在PowerPivot環境中創建一個簡單的查找表更容易。

您也可以將此查找表用於其他分組,如月份名稱和年份的前半/後半部分。 在數據倉庫方面,您實際上正在創建日期維度表。 在本文中,我將給你幾個示例維度表來增強您的PowerPivot for Excel項目。

新的文本維度(查找)表

讓我們考慮一張帶有訂單數據的表格(來自Microsoft的Contoso數據包含一個與此相似的數據集)。 假設表格中包含客戶,訂單日期,訂單總額和訂單類型的字段。 我們將關注訂單類型字段。 假設訂單類型字段包含如下值:

實際上,你可以為這些代碼編寫代碼,但為了簡化這個例子,假設這些是訂單表中的實際值。

使用PowerPivot for Excel,您可以輕鬆地按訂單類型對訂單進行分組。 如果你想要一個不同的分組呢? 例如,假設您需要像電腦,相機和電話那樣的“類別”分組。 訂單表沒有“類別”字段,但可以在PowerPivot for Excel中輕鬆地將其創建為查找表。

完整的樣本查詢表如表1所示 。 這裡是步驟:

當您在Excel中基於PowerPivot數據創建數據透視表時,您將能夠按照您的新分類字段進行分組。 請記住,PowerPivot for Excel僅支持內部聯接。 如果您的查找表中缺少“訂單類型”,則基於PowerPivot數據的任何數據透視表都將缺少該類型的所有相應記錄。 您需要不時檢查。

日期維度(查找)表

日期查找表很可能在大多數PowerPivot for Excel項目中都需要。 大多數數據集都有一些類型的日期字段。 有功能來計算年和月。

但是,如果您需要實際的月份文本或季度,則需要編寫複雜的公式。 包含日期維(查找)表並將其與主數據集中的月份數匹配起來要容易得多。 您需要在訂單表中添加一列以表示訂單日期字段中的月份編號。 在我們的例子中,“月份”的DAX公式為“= MONTH([Order Date])。這將返回一個介於1到12之間的數字,我們的維度表將提供替代值,這些值鏈接到月份數。將為您提供靈活的分析。完整的樣品日期維度表如表2所示

日期維或查找表將包含12條記錄。 月份列的值將為1 - 12。其他列將包括縮短月份文本,完整月份文本,季度等。以下是步驟:

同樣,通過添加日期維度,您可以使用日期查找表中的任何不同值將數據透視表中的數據分組。 按季度或本月的名稱分組將很快。

示例維(查找)表

表格1

類型 類別
上網本 電腦
台式機 電腦
顯示器 電腦
投影儀和屏幕 電腦
打印機,掃描儀和傳真 電腦
計算機設置和服務 電腦
電腦配件 電腦
數碼相機 相機
數碼單反相機 相機
膠片相機 相機
攝像機 相機
相機和攝像機配件 相機
家庭和辦公電話 電話
觸摸屏手機 電話
智能手機和PDA 電話

表2

MonthNumber MonthTextShort MonthTextFull 25美分硬幣 學期
1 一月 一月 Q1 H1
2 二月 二月 Q1 H1
3 損傷 遊行 Q1 H1
4 四月 四月 Q2 H1
可能 可能 Q2 H1
6 六月 Q2 H1
7 七月 七月 Q3 H2
8 八月 八月 Q3 H2
9 九月 九月 Q3 H2
10 十月 十月 Q4 H2
11 十一月 十一月 Q4 H2
12 十二月 十二月 Q4 H2