提问者:小点点

我们可以在mondrian olap上显示字符串值作为度量吗


我想将字符串值显示为度量值之一。当事实表分别具有整数值和字符串值并且还具有一些外部表的键时。然后我可以将整数值显示为度量值,但我不能将字符串值显示为度量值。因为多维数据集架构中的度量元素(用XML编写)不允许度量值没有“聚合器”(它指定度量值的聚合函数)。当然我理解我们不能聚合一些字符串值。但我想在层次结构中显示最新级别的字符串值。

我读了下面的文章。一个图(在这个页面的中间)显示了一个包含字符串值作为度量值的立方体。但是这是Dimension表的Property值的一个例子,所以这个字符串值实际上并不包含表。我想显示包含事实表的字符串值。

Mondrian多维数据集的一个简单日期维度

有人有什么想法可以将字符串值显示为度量值吗?或者我必须编辑Mondrian的源代码?


共2个答案

匿名用户

我也遇到过同样的问题,并通过将度量标签中的聚合器属性设置为max来解决它。例如。

\<Measure name="Comment" datatype="String" column="comment" caption="Comment" aggregator="max"/\>

匿名用户

为什么它需要成为一种措施?

如果没有聚合自然会应用于它并且您只想要字符串值,那么它是一个维度,而不是度量值。试图强迫它成为度量值不是最好的方法。

我认为你参考的图只是显示了一个钻取,唯一实际的衡量标准是营业额。报告布局在维度和衡量标准方面略有误导。

如果出于某种原因您不想将事实表拆分为单独的物理表,您可以在模式中再次将事实表用作维度表。

听起来字符串可能是整数的高基数,可能是1:1。根据多维数据集的大小,这可能是也可能不是性能挑战。但不要试图将其作为衡量标准。

祝你好运!