SQL 2008 MDX 查询中的重复计算
我有一个 MDX 查询,它返回以下元组:
Dim1A, Dim11, Dim21, Measure1A, Measure11, Measure21
Dim1A, Dim12, Dim22, Measure1A, Measure12, Measure22
Dim1A, Dim13, Dim23, Measure1A, Measure13, Measure23
Dim1A, Dim14, Dim24, Measure1A, Measure14, Measure24
....
....
Dim2A, Dim11, Dim21, Measure2A, Measure11, Measure21
Dim2A, Dim12, Dim22, Measure2A, Measure12, Measure22
Dim2A, Dim13, Dim23, Measure2A, Measure13, Measure23
Dim2A, Dim14, Dim24, Measure2A, Measure14, Measure24
Measure1A、Measure2A 对 Dim1A、Dim2A 重复,如果我有一个大集合,则查询响应时间会很慢,因为 MeasureA 是一项复杂的计算。我的问题是如何防止 MeasureA 对每个 DimA 计算 4 次。因此,在上面的示例中,Measure1A 被计算了 4 次,Measure2A 也被计算了 4 次。理想情况下,我希望为每个唯一的 DimA 计算一次
I have an MDX query which returns the following tuples:
Dim1A, Dim11, Dim21, Measure1A, Measure11, Measure21
Dim1A, Dim12, Dim22, Measure1A, Measure12, Measure22
Dim1A, Dim13, Dim23, Measure1A, Measure13, Measure23
Dim1A, Dim14, Dim24, Measure1A, Measure14, Measure24
....
....
Dim2A, Dim11, Dim21, Measure2A, Measure11, Measure21
Dim2A, Dim12, Dim22, Measure2A, Measure12, Measure22
Dim2A, Dim13, Dim23, Measure2A, Measure13, Measure23
Dim2A, Dim14, Dim24, Measure2A, Measure14, Measure24
The Measure1A, Measure2A gets repeated for Dim1A, Dim2A and if I have a large set the query response time is slow since MeasureA is an involved calculation. My question is how can I prevent MeasureA from getting computed 4 times for each DimA. So in the above example Measure1A gets calculated 4 times and so does Measure2A. Ideally I would like them to be computed once for each unique DimA
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
如果可能的话,您可以尝试使用查询范围的计算成员。只要您不在计算中包含当前成员,它就只会计算一次。这是否可行将取决于您的查询的复杂程度以及您是否有很多要添加的度量(Measure1A、Measure2A、Measure3A 等),
例如:
You could try using a query scoped calculated member, if possible with your query. As long as you don't include the currentmember in the calculation it will only get calculated once. Whether this is possible or not will depend on how complex your query is and whether you have a lot of measures to add (Measure1A, Measure2A, Measure3A, etc)
Something like: