两个日期之间的ssas值

问题描述 投票:0回答:1

我正在尝试在MDX上提取tot_ack的总和,因此它将以有效尺寸和acc(帐户降额)显示。但是,我不知道如何建模之间的日期。我是MDX的新手。

 select  SUM(tot_ack)    from
DBO.DIM_OBJ_ACC AS ACC INNER JOIN
 DBO.FAKTA_SALDO AS saldo ON ACC.ACC_ID = saldo.ACC_ID INNER JOIN
 DBO.DATE_OBJ_KP AS KP ON saldo.KP_ID = KP.KP_ID INNER JOIN 
   DBO.PERIOD AS PERIOD ON saldo.PERIOD = PERIOD.PERIOD
where   
 ACC.ACC _ID = '3001' and ACC.erit_ID = '1'
   (DATEADD(day, 0,DATEADD(month, 11,DATEADD(year,2011-1900, 0))) BETWEEN KP.KP_DATE_START AND KP.KP_DATE_END) AND 
     (PERIOD.MONTH= 12 OR PERIOD .MONTH=0) AND (PERIOD.YEAR =2011)  

我的MDX代码

  SELECT {[DIM OBJ ERIT].[ERIT ID].MEMBERS}    ON COLUMNS,
    {[DATE OBJ ACC].[ACC ID].members} ON ROWS
    FROM [REPORT]
WHERE  (Measures.[tot ack],
    [PERIOD].[year].[2011],
    [PERIOD].[month].[12],  
    [DATE OBJ KP].[KP DATE START].[Year].[2011],
    [DATE OBJ KP].[KP DATUM END].[Year].[2011]
    )
ssas mdx
1个回答
0
投票

在mdx中,您用“:”指定范围。所以你的查询应该是

SELECT {[DIM OBJ ERIT].[ERIT ID].MEMBERS}    ON COLUMNS,
    {[DATE OBJ ACC].[ACC ID].members} ON ROWS
    FROM [REPORT]
WHERE  (Measures.[tot ack],
    [PERIOD].[year].[2011],
    [PERIOD].[month].[12],  
    [DATE OBJ KP].[KP DATE START].[Year].[2011]:[DATE OBJ KP].[KP DATUM END].[Year].[2011]
    )
© www.soinside.com 2019 - 2024. All rights reserved.