0

我目前正在使用 MDX 查询和 Adventure Works 数据库。我想要实现的是在两个季度之间获取每季度的所有数据。

例如,2006 年第 2 季度和 2009 年第 3 季度之间的所有数据按季度划分。

我最接近实现我想要的是使用以下查询:

SELECT { KPIValue("Channel Revenue"), KPIStatus("Channel Revenue") } ON Columns,
    {( 
        {[Date].[Fiscal Year].&[2006]:[Date].[Fiscal Year].&[2009]},
        {[Fiscal Quarter of Year].&[FY Q1]:[Fiscal Quarter of Year].&[FY Q4]}
    )} ON Rows
FROM [Adventure Works]

我将 2006 年至 2009 年的范围与第 1 季度至第 4 季度的范围相结合。

在下面,您可以在左侧看到我的查询结果,在右侧看到我想要的结果。

数据

我尝试将上面的查询与第 2 季度和第 3 季度一起使用,如下所示,但该查询仅返回每年第 2 和第 3 季度的数据。

{[Fiscal Quarter of Year].&[FY Q2]:[Fiscal Quarter of Year].&[FY Q3]}

我还尝试了以下查询:

SELECT
    { KPIValue("Channel Revenue"), KPIStatus("Channel Revenue") } ON Columns,
    {( [Date].[Date].&[20060401]:[Date].[Date].&[20090901] )} ON Rows
FROM [Adventure Works]

使用此查询,我从我想要的时间段中获取我想要的数据,但它是每天而不是每季度。

问题

如何获取两个给定季度之间的季度的每季度数据

4

1 回答 1

0

我已经找到了解决这个问题的方法。通过使用以下查询,可以实现我想要的:

SELECT
    { KPIValue("Channel Revenue"), KPIStatus("Channel Revenue") } ON Columns,
    {( [Date].[Fiscal].[Fiscal Quarter].&[2006]&[2] : [Date].[Fiscal].[Fiscal Quarter].&[2009]&[3])} ON Rows
FROM [Adventure Works]

因此,通过将Fiscal Quarter of Year更改为Fiscal Quarter并使用选择年份和季度

 .&[2006]&[2]

它可以选择某一年的季度。通过使用本季度中的 2 个和一个范围,可以获得这两个季度之间的所有数据。

[Date].[Fiscal].[Fiscal Quarter].&[2006]&[2] : [Date].[Fiscal].[Fiscal Quarter].&[2009]&[3]
于 2015-10-08T12:11:27.583 回答