交易之间的平均时间(SSAS)

时间:2015-03-18 12:16:40

标签: ssas mdx

我在SSAS多维立方体上构建了一个计算成员,以便计算成员事务之间的平均时间天数。我使用的代码非常简单:

[Measures].[Distinct Days]/[Measures].LoyalTransactions

“唯一天数”度量来自:

DISTINCTCOUNT(DistinctDays)

其中DistinctDays是具有以下表达式的动态集:

{[Measures].[Loyalty Fact Count]}
*
DISTINCT({ [TimeDim Transactions].[DateKey].[DateKey]})

问题在于它的性能非常差,可能是由于天数的不同。结果也有点不稳定,例如,当我从月份属性过滤交易日期时以及使用日期属性过滤时(date> = FirstDayOfMonth和date< = LastDayOfMonth),结果不一样

有没有办法以不同的方式计算这个衡量标准?

1 个答案:

答案 0 :(得分:0)

我无法测试,但试图改编自这篇Mosha文章(http://sqlblog.com/blogs/mosha/archive/2008/06/14/counting-distinct-values-in-mdx.aspx)。
它执行吗?

Sum([DistinctDays] AS x,
   1/Filter([DistinctDays], 
   x.Current is x.CurrentMember
   ).Count)