Sql server MDX查询:尝试返回计算的年份
我有一份报告,目前可以很好地处理硬编码年份,我正在尝试使它们更具动态性,以便显示当前年份和上一年度的回报,以避免每年更新。这在SQL中是一件简单的事情,但在MDX中我很难弄清楚这一点,我还在学习。所讨论的行是[日期].[年度]和[2013年]:[日期].[年度]和[2014年]。以下是我当前的查询:Sql server MDX查询:尝试返回计算的年份,sql-server,reporting-services,ssas,mdx,Sql Server,Reporting Services,Ssas,Mdx,我有一份报告,目前可以很好地处理硬编码年份,我正在尝试使它们更具动态性,以便显示当前年份和上一年度的回报,以避免每年更新。这在SQL中是一件简单的事情,但在MDX中我很难弄清楚这一点,我还在学习。所讨论的行是[日期].[年度]和[2013年]:[日期].[年度]和[2014年]。以下是我当前的查询: SELECT { [Measures].[Users], [Measures].[Sessions] } ON COLUMNS, (
SELECT {
[Measures].[Users],
[Measures].[Sessions]
} ON COLUMNS,
(
{[User Type].[Description].&[Customer], [User Type].[Description].&[Vendor]},
[Date].[Year Month].[Year Month],
[Date].[Month Name].[Month Name],
[Date].[Year].&[2013]:[Date].[Year].&[2014]
) ON ROWS
FROM [My Cube]
谢谢您的帮助。您不能在元组中使用范围。您首先需要创建一个成员 将其置于SELECT子句之前:
WITH Member [Date].[Periods] as Aggregate( [Date].[Year].&[2013]:[Date].[Year].&[2014])
然后首先用
[Date].[Periods]
替换元组中的范围,谢谢您的回复。正如您所提到的,我尝试将其添加到代码中,但是现在我遇到了这个错误:“查询(1,6)‘Date’维度包含多个层次结构,因此必须显式指定层次结构。”我不太确定我需要在这里做什么来解决这个问题。您需要在计算成员的定义中指定一个层次结构。