我想改變合計的方式來工作立方體,以避免舍入錯誤。SSAS MDX - 如何改變在立方體中總結作品的方式?
我的計算是簡單的列A/B列
在層次結構中的每一個層面,我想有SUM(列A)/總和(列B)以外,SUM(所有單獨的列A /列B)
如何在計算中改變這種總結的方式?
我想改變合計的方式來工作立方體,以避免舍入錯誤。SSAS MDX - 如何改變在立方體中總結作品的方式?
我的計算是簡單的列A/B列
在層次結構中的每一個層面,我想有SUM(列A)/總和(列B)以外,SUM(所有單獨的列A /列B)
如何在計算中改變這種總結的方式?
您可以添加在聚合最後處理的calculated member。讓我們假設你定義A和B措施:
WITH
MEMBER [Measures].[A/B] AS ([Measures].[A])/([Measures].[B])
SELECT
...
您可以在多維數據集定義添加計算的成員,因此將在所有MDX語句可用。可以肯定的是,請注意Sum(A)/ Sum(B)!= Sum(A/B),如果需要,您可以添加檢查0/null。
據我所知,你有一個計算字段(列A /列B)在SQL DB或DSV(數據源視圖)。因此,您可以爲每列創建兩個SUM度量值(A列爲一個總和度量值,第二個爲B列),並將其用於新計算的度量值中。
你想要的是SUM(列A)/總和(列B)而不是SUM(所有單獨的列A /列B)。然後我假設你有兩個措施:sum_column_a
和sum_column_b
。
要創建新措施sum_column_a_b
你應該創建一個計算的成員:
要粘貼的代碼:
CREATE MEMBER CURRENTCUBE.[Measures].[sum_column_a_b]
AS iif( [Measures].[sum_column_b] > 0,
[Measures].[sum_column_a]/[Measures].[sum_column_b],
0),
FORMAT_STRING = "Percent",
VISIBLE = 1 , ASSOCIATED_MEASURE_GROUP = 'yourDesiredGroup';
處理多維數據集時,此新度量將可用。