導出資料行
本主題示範如何根據 DAX 範例活頁簿中的資料建立「導出資料行」(Calculated Column),並且包含關於在建置公式時使用「自動完成」的資訊。 如需公式的詳細資訊,請參閱<建置計算公式>。
了解導出資料行
導出資料行是由您加入現有 PowerPivot 資料表的資料行。 您不必貼上或匯入資料行的值,而可以建立定義資料行值的 DAX 公式。 導出資料行可以在樞紐分析表、樞紐分析圖或 Power View 報表中使用,就如同任何其他資料行一樣。
導出資料行中的公式與您在 Excel 中建立的公式非常類似。 然而與 Excel 不同的是,您不能為資料表中不同的資料列建立不同的公式,DAX 公式會自動套用到整個資料行。
當資料行包含公式時,會針對每個資料列計算其值。 在您一建立公式之後,便會隨即計算資料行的結果。 資料行值日後將視需要進行重新計算,例如當基礎資料重新整理之時。
您可以根據量值及其他導出資料行,建立導出資料行。 例如,您可以建立一個導出資料行,以便從文字字串中擷取數字,然後將該數字使用在另一個導出資料行中。
建立導出資料行
導出資料行依據的是您已加入至現有資料表中的資料。 例如,您可以選擇串連值、執行加法、擷取子字串,或比較其他欄位中的值。 若要加入導出資料行,您必須已至少將一個資料表加入 PowerPivot 活頁簿。
本範例示範如何使用「自動完成」建置用於新導出資料行中的簡單公式。 公式的內文如下:
=EOMONTH([StartDate],0])
此公式會從 DAX 範例活頁簿的 Promotion 資料表中,擷取 StartDate 資料行的月份。 接著再計算 Promotion 資料表中每個資料列的月底值。 第二個參數會指定在 StartDate 當月之前或之後的月數,本例為 0 即表示同一個月份。 例如,若 StartDate 資料行的值為 6/1/2001,則導出資料行的值將是 6/30/2001。
如需範例活頁簿的詳細資訊,請參閱<取得 PowerPivot 的範例資料>。
[!附註]
在 Windows Vista 和 Windows 7 中,PowerPivot 視窗中的功能在功能區中都有提供,本主題會對此加以說明。 在 Windows XP 中,功能都是從一組功能表使用的。 如果您是使用 Windows XP,而且想要了解功能表命令如何與功能區命令相關,請參閱<Windows XP 中的 PowerPivot UI>。
若要使用「自動完成」建立導出資料行 |
|
為導出資料行命名
根據預設,新的導出資料行會加入至工作表中其他資料行的右邊,而且將自動為這類資料行指派預設名稱 CalculatedColumn1、CalculatedColumn2,依此類推。 建立資料行之後,您可以將其重新排列和重新命名。 請注意,變更導出資料行名稱有下列限制:
每個資料行名稱在資料表中都必須是唯一的。
在相同的活頁簿中,請避免使用已經用於量值的名稱。 雖然量值和導出資料行可能可以有相同的名稱,但如果這些名稱不是唯一的,您就可以輕易地發現計算錯誤。 為避免不小心叫用量值,如果指的是資料行,請務必使用完整的資料行參考。
當您重新命名導出資料行時,必須更新依賴現有資料行的所有公式。 只要您不是處於手動更新模式,公式的結果都會自動更新。 不過,這項作業可能需要花一些時間。
PowerPivot 活頁簿內的資料行名稱或物件名稱之中不能使用某些字元。 如需詳細資訊,請參閱<PowerPivot 的 DAX 語法規格>中的<命名需求>。
若要重新命名或編輯現有的導出資料行 |
|
變更資料類型
您可以用相同的方式變更導出資料行的資料類型,以及所有非導出資料行的資料類型。 但是,您無法進行下列資料類型變更:從文字變更為十進位、從文字變更為整數、從文字變更為貨幣,以及從文字變更為日期。 不過,您可以從文字變更為布林值。
了解導出資料行的效能
導出資料行的公式可能會比量值所使用的公式更耗費資源。 其中一個原因是;導出資料行的結果永遠是針對資料表中的每個資料列計算,而量值僅針對樞紐分析表或樞紐分析圖中所使用的資料格計算。
例如,包含一百萬個資料列的資料表所擁有的導出資料行永遠都會有一百萬個結果,在效能上也會有對應的影響。 但是,樞紐分析表通常會套用資料列和資料行標題來篩選資料,因此,只會針對樞紐分析表內每一個資料格中的資料子集來計算量值。
公式通常與該公式中參考之物件具有相依性,例如評估值的其他資料行或運算式。 舉例來說,以另一個資料行做為根據的導出資料行或是包含具有資料行參考之運算式的計算,必須等到評估另一個資料行的結果之後,才會評估出結果。 預設情況下,活頁簿會啟用自動重新整理,因此在更新值或重新整理公式時,任何這類相依性都有可能影響效能。
為了避免當您在建立導出資料行時發生效能問題,請遵循以下指導方針:
分多個步驟建立公式並將結果儲存到資料行,讓您能夠驗證結果及評估效能,而不要建立包含許多複雜相依性的單一公式。
修改資料通常需要重新計算導出資料行。 您可以將重新計算模式設定為手動來防止重新計算;不過,如果導出資料行中有任何不正確的值,則該資料行將呈灰色,直到您重新整理與重新計算資料為止。
如果您變更或刪除資料表之間的關聯性,使用這些資料表中之資料行的公式將會變成無效。
如果您建立包含循環相依性或自我參考相依性的公式,將會發生錯誤。
請參閱
概念
Data Analysis Expressions (DAX) 概觀