計算
適用於: SQL Server Analysis Services Azure Analysis Services Fabric/Power BI Premium
計算是多維度表示式 (MDX) 表達式或腳本,用來定義 Microsoft sql Server SQL Server Analysis Services 中 Cube 中的導出成員、具名集或範圍指派。 計算可讓您新增對象,這些物件不是由 Cube 的數據所定義,而是可參考 Cube、其他 Cube 或甚至 SQL Server Analysis Services 資料庫外部資訊的表達式。 計算可讓您擴充 Cube 的功能,為商業智慧應用程式增加彈性和能力。 如需腳本計算的詳細資訊,請參閱 sql Server 2005Microsoft MDX 腳本簡介。
匯出成員
匯出成員是一個成員,其值是在運行時間使用您在定義匯出成員時指定的多維度運算式 (MDX) 表達式來計算。 計算成員可供商業智慧應用程式使用,就像任何其他成員一樣。 匯出成員不會增加 Cube 的大小,因為只有定義會儲存在 Cube 中;值會視需要計算在記憶體中,以響應查詢。
任何維度都可以定義導出成員,包括量值維度。 在量值維度上建立的導出成員稱為導出量值。
雖然匯出成員通常是以 Cube 中已存在的數據為基礎,但是您可以結合數據與算術運算符、數位和函式來建立複雜的表達式。 您也可以使用 LookupCube 之類的 MDX 函式來存取 SQL Server Analysis Services 資料庫中其他 Cube 中的數據。 SQL Server Analysis Services 包含標準化的 Visual Studio 函式連結庫,而且您可以使用預存程式,從目前 SQL Server Analysis Services 資料庫以外的來源擷取數據。 如需預存程式的詳細資訊,請參閱 定義預存程式。
例如,假設航運公司的主管想要根據每一單位的收益,決定哪些類型的貨物更容易攜帶。 他們會使用包含貨物、車隊和時間維度的貨運立方體,以及量值Price_to_Ship、Cost_to_Ship和Volume_in_Cubic_Meters:不過,Cube 不包含獲利率的量值。 您可以結合下列運算式中的現有量值,將匯出成員建立為 Cube 中名為 Profit_per_Cubic_Meter 的量值:
([Measures].[Price_to_Ship] - [Measures].[Cost_to_Ship]) /
[Measures].[Volume_in_Cubic_Meters]
建立匯出成員之後,Profit_per_Cubic_Meter會在下次流覽[出貨] Cube 時,連同其他量值一起顯示。
若要建立匯出成員,請使用 Cube 設計師中的 計算索引標籤。 如需詳細資訊,請參閱 建立導出成員
命名集
具名集是會傳回集合的 CREATE SET MDX 語句表達式。 MDX 運算式會儲存為 Microsoft SQL Server SQL Server Analysis Services 中 Cube 定義的一部分。 系統會建立具名集,以便在多維度表示式 (MDX) 查詢中重複使用。 具名集可讓商務使用者簡化查詢,並使用集合名稱,而不是用於複雜、常用集合表達式的集合表達式。 相關主題:建立具名集
腳本命令
腳本命令是 MDX 腳本,包含在 Cube 的定義中。 腳本命令可讓您在 Cube 上執行幾乎任何 MDX 支援的動作,例如將計算範圍限定為只套用至 Cube 的一部分。 在 SQL Server SQL Server Analysis Services 中,MDX 腳本可以套用至整個 Cube 或 Cube 的特定區段,在腳本執行過程中的特定點。 默認腳本命令,也就是 CALCULATE 語句,會根據預設範圍,以匯總的數據填入 Cube 中的數據格。
默認範圍是整個 Cube,但您可以定義更有限的範圍,稱為 subcube,然後將 MDX 腳本套用至該特定 Cube 空間。 SCOPE 語句會定義計算腳本中所有後續 MDX 表達式和語句的範圍,直到範圍終止或重新定義為止。 接著,THIS 語句會用來將 MDX 運算式套用至目前的範圍。 您可以使用 BACK_COLOR 語句來指定目前範圍內儲存格的背景儲存格色彩,以協助您在偵錯期間。
例如,您可以使用腳本命令,根據前一段時間的銷售加權值,將銷售配額配置給跨時間和銷售領域的員工。
另請參閱
多維度模型中 計算