【发布时间】:2014-02-13 15:51:36
【问题描述】:
我的多维数据集中有两个维度,分别称为 [Session Length] 和 [Date],以及一个名为 [Count - Logins] 的度量。 [Session Length] 维度包含一个名为[Session Length] 的属性,其成员是从0 到240 的整数。
我喜欢编写一个 MDX 查询,它将 [Count - Logins] 聚合到 [Session Length] 维度的自定义子集上(即,我想创建一个基于 [Session Length] 维度的自定义集,并将计数聚合到该维度的各个成员上)自定义设置)。这是我到目前为止提出的查询,但不幸的是我不知道如何前进:
WITH SET [Description] AS {
[SessionLength].[Session Length].&[0], //Glimpse
[SessionLength].[Session Length].&[1]:[SessionLength].[Session Length].&[5], //Short
[SessionLength].[Session Length].&[6]:[SessionLength].[Session Length].&[30], //Medium
[SessionLength].[Session Length].&[31]:[SessionLength].[Session Length].&[90], //Long
[SessionLength].[Session Length].&[90]:[SessionLength].[Session Length].&[240]} //Extended
MEMBER [SessionLength].[Session Length].SessionDescription AS
Aggregate([Description])
SELECT
{ [Measures].[Count - Logins] }
ON COLUMNS,
NONEMPTY({[SessionLength].[Session Length].SessionDescription} * {[Date].[Date].[Date]}) ON ROWS
FROM MyCube
使用以下示例结果集:
Session Length | Date | Count - Logins
-------------------------------------------------
SessionDescription | 2014-02-01 | 22
SessionDescription | 2014-02-01 | 17
如您所见,计数是在整个集合中汇总的,而不是每个成员单独的。这是我希望产生的结果:
Session Length | Date | Count - Logins
-------------------------------------------------
Glimpse | 2014-02-01 | 3
Short | 2014-02-01 | 4
Medium | 2014-02-01 | 9
Long | 2014-02-01 | 5
Extended | 2014-02-01 | 1
Glimpse | 2014-02-02 | 2
Short | 2014-02-02 | 5
Medium | 2014-02-02 | 7
Long | 2014-02-02 | 2
Extended | 2014-02-02 | 1
任何帮助将不胜感激。我知道这可以通过修改 DSV 来实现,但我不想改变 Cube 的结构。
【问题讨论】: