如何使用蒙德里安聚合单个维度的多个层次结构?
Posted
技术标签:
【中文标题】如何使用蒙德里安聚合单个维度的多个层次结构?【英文标题】:How to aggregate multiple hierarchies of a single dimension using Mondrian? 【发布时间】:2019-08-28 12:59:22 【问题描述】:我有以下 MDX 查询:
SELECT [MEASURES].[MEASURE_VALUE] ON COLUMNS,
[DIMENSION_A].[HIERARCHY_1],
[DIMENSION_A].[HIERARCHY_2]
ON ROWS
FROM [MY_CUBE]
正如预期的那样,我得到了 2 个值,每个层次结构一个。
问题:我想要一个值来表示我从上面的查询中得到的 2 个值的总和。我不知道该怎么做,我尝试了以下方法
SELECT [MEASURES].[MEASURE_VALUE] ON COLUMNS,
[DIMENSION_A].[HIERARCHY_1] * [DIMENSION_A].[HIERARCHY_2]
ON ROWS
FROM [MY_CUBE]
但我收到了这个错误:
Caused by: mondrian.olap.MondrianException: Mondrian Error:Tuple contains more than one member of hierarchy '[DIMENSION_A.HIERARCHY_2]'.
我对蒙德里安不太熟悉,通过阅读文档,您似乎只能交叉连接不同的维度而不是同一维度的层次结构。以 SQL 方式并给出一个非常简单的上下文,我相信它相当于 WHERE
子句,例如:
WHERE DIMENSION_A.HIERARCHY = HIERARCHY_1 OR DIMENSION_A.HIERARCHY = HIERARCHY_2
【问题讨论】:
【参考方案1】:您可以使用 .where 子句。详情请参考以下网址: Where condition in Mondrian
【讨论】:
以上是关于如何使用蒙德里安聚合单个维度的多个层次结构?的主要内容,如果未能解决你的问题,请参考以下文章