2016-08-04 149 views
1

我需要從集合中刪除所有2個月。此代碼返回所有日期範圍,但不包括2個月。從日期範圍除特定日期以外的MDX查詢

SELECT 
    {[Measures].[In]} ON COLUMNS, 
    EXCEPT([Date].[2014].[1] : [Date].[2016].[2], [Date].[Month].[2]) ON ROWS 
FROM [Shop hourly] 

爲whytheq打印屏幕 enter image description here

我的決定基於whytheq answear。我爲所有類型的日期創建了一個維度,除了它們。例如:

SELECT {[Measures].[In sum]} ON COLUMNS, 
    NON EMPTY 
     {[Shop].[11], [Shop].[22], [Shop].[33]} * 
     Except([Quarter].Children, [Quarter].[2]) * 
     [Month].Children ON ROWS 
FROM [Shop hourly] 
WHERE 
    ([Date].[2013].[1].[1] : [Date].[2016].[1].[1]) * 
    Except([Year].Children, [Year].[2014]) 

enter image description here

+0

所以你想要刪除{2014年2月,2015年2月,2016年2月}? – whytheq

+0

是的,這是我想要的 – Nodon

+0

- 我回答了下面的問題 – whytheq

回答

1

AdventureWorks我可以做到以下幾點:

SELECT 
    [Measures].[Internet Sales Amount] ON 0 
,NON EMPTY 
    Except 
    (
     [Date].[Calendar].[Month].&[2005]&[7] 
     : 
     [Date].[Calendar].[Month].&[2008]&[7] 
    ,Exists 
     (
     [Date].[Calendar].[Month].MEMBERS 
     ,[Date].[Calendar Quarter of Year].&[CY Q3] 
    ) 
    ) ON 1 
FROM [Adventure Works]; 

所以調整上述對多維數據集可能看起來如下:

SELECT 
    {[Measures].[In]} ON COLUMNS 
,Except 
    (
    [Date].[2014].[1] : [Date].[2016].[2] 
    ,Exists 
    (
     [Date].MEMBERS 
    ,[Date].[Month].[2] 
    ) 
) ON ROWS 
FROM [Shop hourly]; 
+0

Mondrian更改[日期]。[月]。[2]到[日期]。[2012]。[2]我不知道它爲什麼這樣做。 – Nodon

+0

您需要添加[[Date]'維度結構的屏幕印記,以便我瞭解發生了什麼。 – whytheq

+0

我添加了屏幕。 – Nodon