3

我已经成功添加了基本的总和/计数/等。简单的措施,但不知道如何添加更复杂的措施。

让我们假设数据结构表示带有货物的轨道并具有下一个结构:

  • 日期
  • id_track
  • id_articte
  • 数量
  • 成本

并想计算下一个措施:

  1. 平均商品价格,计算方式为 sum(cost) / sum(amount)
  2. 平均轨道成本。它是整个轨道总和(成本)之间的平均值。Sql 表达式看起来像 sum(cost) / count(distinct id_track)

将这些措施添加到我的多维数据集的正确方法是什么,以防我需要它们在 Excel 中而不是 XMLA 中?

4

2 回答 2

3

复杂的计算是使用我们在 MDX 中称为“计算量度”的方法来解决的。

计算度量支持 MDX 语言的全部功能。您可以在此处查看有关计算度量的更多信息。它们非常强大,支持超过 100 种功能(功能列表)。

如果您想为每个模式定义一次计算度量,我建议您在 Builder UI 选项卡的高级/脚本中定义它们。您可以首先在 MDX IDE 中检查有效性,并在验证后将它们移至脚本。

于 2015-10-12T09:00:27.747 回答
1

平均商品价格,计算方式为 sum(cost) / sum(amount)

这将类似于以下内容:

WITH MEMBER [Measures].[AvgPrice] AS
  AVG(
    EXISTING([Item].[Item].MEMBERS)
   ,[Measures].[COST]
  )
...

或者

WITH MEMBER [Measures].[AvgPrice] AS
  [Measures].[COST] 
  / 
  [Measures].[AMOUNT] 
...

平均轨道成本。它是整个轨道总和(成本)之间的平均值。Sql 表达式看起来像 sum(cost) / count(distinct id_track)

WITH MEMBER [Measures].[AvgTrackCost] AS
  AVG(
    EXISTING([TrackItem].[TrackItem].MEMBERS)
   ,[Measures].[COST]
  )
...

我不得不猜测您的多维数据集中存在以下内容:

[Measures].[COST]
[Measures].[AMOUNT] 
[Item].[Item].MEMBERS
[TrackItem].[TrackItem].MEMBERS
于 2015-10-12T19:49:40.620 回答