【问题标题】:Powerpivot with SSAS cube带有 SSAS 多维数据集的 Powerpivot
【发布时间】:2014-04-23 02:36:42
【问题描述】:

我们有一个用于患者数据的 SSAS 多维数据集。我没有在 powerpivot 中使用所有度量和计算重新创建整个多维数据集,而是希望使用多维数据集本身并添加到它上面。我刚刚熟悉 MDX,但是有没有一种简单的方法可以为多维数据集选择 ALL(选择 *)?我真的不想过滤掉任何东西。我可以使用 powerpivot 中的设计视图来构建它,但正如预期的那样,构建它需要很长时间,因为我们有很多维度。

【问题讨论】:

    标签: mdx powerpivot


    【解决方案1】:

    选择所有的 MDX 将是

    SELECT FROM [YourCubeName]
    

    此查询的结果为零(即一个单元格,没有列或行轴)。由于 MDX 总是聚合数据,这将向您显示所有底层数据的默认度量的总和。

    实际上,如果您希望多维数据集中包含叶级别的所有数据,您可以使用类似这样的查询,使用LEAVES function,它返回一个交叉连接,它是立方体:

    SELECT Measures.Members
           ON COLUMNS,
           LEAVES()
           ON ROWS
      FROM [YourCubeName]
    

    但是,MDX/SSAS 并未针对此类庞大的结果集进行优化。它更适合大小不超过单个屏幕大小的结果集,因为它的目标是在线分析。访问构建多维数据集的基础关系数据可能更有效。

    【讨论】:

    • 我实际上想要所有维度以及度量。我基本上想要立方体,但被压平了。
    • @SarahBroaden 好的,最初不明白。我编辑了我的答案。
    • 好的,这有帮助,感谢提交。我是多维数据集概念的新手,我们遇到的问题是某些计算是在多维数据集中完成的,而不是在基础数据中完成,所以我不想引入基础数据并再次重做所有这些计算在 powerpivot 中,但听起来这可能是更好的选择。
    • @SarahBroaden 如果您还需要计算成员,则将Measures.Members(仅返回物理,即非计算度量)更改为Measures.AllMembers(返回物理和计算度量)。但是您应该知道,许多计算不能从叶数据中总结出来。这些通常是诸如增长或份额之类的度量,其中的除法是求和之后完成的。无论如何,您都必须在不依赖多维数据集进行所有聚合的任何解决方案中复制这些。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-07-23
    • 2019-08-24
    • 2023-03-04
    相关资源
    最近更新 更多