2011-02-04 142 views
3

我有一個查詢試圖過濾結果,它等於某個值。查詢初級講座正常工作......MDX過濾器查詢

SELECT NON EMPTY {[Date].[Year Number].Members} ON COLUMNS, 
NON EMPTY CROSSJOIN({[ItemCode].[Item Category].Members}, {[Measures].[Net Sales], [Measures].[Total Cost], [Measures].[Profit]}) ON ROWS 
FROM (SELECT Filter([ItemCode].[Item Category].[Item Category].Members, ([Measures].[Net Sales] = 3440.8)) ON COLUMNS FROM [Sales]) 

...但相同的查詢,但用不同的值...

SELECT NON EMPTY {[Date].[Year Number].Members} ON COLUMNS, 
NON EMPTY CROSSJOIN({[ItemCode].[Item Category].Members}, {[Measures].[Net Sales], [Measures].[Total Cost], [Measures].[Profit]}) ON ROWS 
FROM (SELECT Filter([ItemCode].[Item Category].[Item Category].Members, ([Measures].[Net Sales] = 41581.65)) ON COLUMNS FROM [Sales]) 

...不想要在所有的工作。我知道他們都應該正常工作,因爲這兩個值都存在於多維數據集中,並且不僅僅是這個值不起作用,而且還有很多,並且據我所知,沒有任何模式。

+0

很混亂?您是否嘗試過在沒有NON EMPTY的情況下運行查詢 - 這是我能想到的唯一的事情。 – 2011-02-07 13:01:32

回答

2

我建議檢查[Net Sales]的數據類型,如果它是浮點類型例如雙擊然後搜索確切的值可能無法正常工作。即數據庫中的41581.65值可以是41581.6500001。

如果您將數據類型更改爲固定精度,例如貨幣,那麼查詢可能會起作用。看看這個鏈接for the many benfits of money