我创建MDX查询:
with member [DTime.TimeYearQuaterMonthDayTimestamp].[Times] as
Aggregate({[DTime.TimeYearQuaterMonthDayTimestamp].[2013].[4].[11].[17],
[DTime.TimeYearQuaterMonthDayTimestamp].[2013].[4].[11].[18]}
)
SELECT {[DTime.TimeYearQuaterMonthDayTimestamp].[Year].[Month} ON 1,
{Measures.Price} ON 0
FROM [Sales]
WHERE ([DEndAuction].[true],[DTime.TimeYearQuaterMonthDayTimestamp].[Times] )
但是在运动中会抛出异常:
原因:mondrian.olap.MondrianException:Mondrian错误:层次结构'[DTime.TimeYearQuaterMonthDayTimestamp]'出现在多个独立轴上。
你能帮助我吗?如何改进在运动中不会抛出异常的查询?
最佳答案
解释错误消息:当MDX都在同一轴内时,它允许多次使用该尺寸。例如,如果您有一个名为[A]和[B]的尺寸,则可以这样做:
SELECT {[A].whatever} ON ROWS, {[B].whatever} ON COLUMNS FROM [mycube]
这是不允许的:
SELECT {[A].whatever} ON ROWS, {[A].whatever} ON COLUMNS FROM [mycube]
WHERE
子句也是如此,就像另一个轴一样。您不能在1
以及WHERE
内使用[DTime]维。某些人创建了一个虚拟维度,名为[DayOfWeek],成员为7,或者为[Hour],成员为24,以显示月数与天数或月数与小时数的报告。