0

我有一个 Mondrian/MDX 查询,我在其中获取日期范围内的数据,但我想在结果中返回时间作为其属性的值。我目前的查询是这样的:

With
set [*TIME_RANGE] as '{[Time].[2011].[3].[9].[1].[1].Lag(30):[Time].[2011].[3].[9].[1].[1]}'
set [*PXMD] as '[meta_pixel_id1.Pixel].[label].Members'
set [*BASE_MEMBERS] as 'NonEmptyCrossJoin([*TIME_RANGE],[*PXMD])'
Select
{[Measures].[total_users],[Measures].[total_action_pixels]} on columns,
[*BASE_MEMBERS] on rows
From [ActionPixels]
Where [Pixel ID].[500]

它返回如下结果:

Axis #0:
{[Pixel ID].[500]}
Axis #1:
{[Measures].[total_users]}
{[Measures].[total_action_pixels]}
Axis #2:
{[Time].[2011].[3].[8].[4].[24], [meta_pixel_id1.Pixel].[500].[Action].[Type].[Handraiser]}
{[Time].[2011].[3].[8].[4].[24], [meta_pixel_id1.Pixel].[500].[Action].[Type].[Lead]}
{[Time].[2011].[3].[8].[4].[24], [meta_pixel_id1.Pixel].[500].[Action].[Type].[Shopper]}
Row #0: 3
Row #0: 3
Row #1: 4
Row #1: 4
Row #2: 2
Row #2: 2

这是我所期望的。问题是,我正在编写这个查询以在 Pentaho xaction 中使用,所以我有一些 Javascript 代码之后将其转换为 JSON 格式,当我要提取[Time]列的值时,我只返回天数(在这种情况下,24)。我想要显示的是[Time].[Day]我们调用的维度的属性,Date String它包含格式为年-月-日的日期。但是我能找到的关于如何做到这一点的例子都不适用于我的[Time]按范围选择。

最直接的解决方案似乎是显示该Date String属性,但我愿意接受其他想法,这些想法可以让我获得我想要的数据并在我想要的时间范围内进行过滤。

4

1 回答 1

0

我能够根据网上找到的代码解决问题。我之前尝试过类似的方法,但它不起作用,因为多维数据集中的属性最终存在问题,导致它始终返回 null 而不是创建时间维度的表中的值。

于 2011-09-07T14:54:27.580 回答