問題
以下の私の MDX は、私が期待する平均総利益数を返しません。
MDX
select NON EMPTY {Hierarchize({[New Repeat].[New Repeat].[New]})} ON COLUMNS,
NON EMPTY {Hierarchize({[Measures].[Order Count], [Measures].[Total Gross Profit], [Measures].[Average Gross Profit]})} ON ROWS
from [USAOrders]
where {({{[Voucher Code].[ABC], [Voucher Code].[DEF]}})}
戻り値:
新しい繰り返し = 新しい
注文数 = 13
総粗利益 = 438.03
平均総利益 = 24.668
(平均総利益は 438.03/13 = 33.69 になります)
数値の導出方法
この MDX から派生した SQL は、2 つの行を返します。
new repeat voucher_code | order_count | total_gross_profit | avg_gross_profit
"ABC" 2 23.26 11.63
"DEF" 11 414.77 37.7063636363636
したがって、数値を見ると、MDX は、個々の伝票の平均総利益を合計し、異なる伝票の行数 (この場合は 2) で割ることによって、指定されたすべての伝票の平均総利益を計算しているように見えます。
例: (11.63 + 37.7063636363636)/2 = 24.668
一方、正しい数値を取得するには、Total Gross Profit の値を合計し、元のデータの行数で割る必要があります。
例: (23.26 + 414.77)/13 = 33.69
(キューブ内で、総利益と平均総利益は、総利益メジャー/列の合計関数と平均関数を使用して定義されたメジャーです)。
問題を解決して正しい番号を取得する方法はありますか?
ご提案いただきありがとうございます。