2013-02-09 33 views
1

我在fact table列在某些行.the專欄'Null' value.i已經基於與aggregate function設置爲DistinctCountIN SSAS如何在不同的計數措施

這一措施計null值此列措施刪除空值太。 但我不想數null值我該怎麼辦?

回答

5

最有效的方法是在數據源視圖中過濾掉NULL值(例如使用命名查詢)。這不會影響性能,因爲不同的計數度量是在單獨的度量組中計算的。

+0

看起來這是唯一的出路 - 這是驚人的微軟忽略了這個問題 – mishkin 2013-02-14 22:05:09

1

一個受歡迎的解決方案的工作原理是從表格中篩選出空值的計數。這有效,但我敢打賭,它需要對事實表進行另一次掃描。

另一種解決方法就像用火撲滅火災。
添加一個計算列,它是0,如果是零和1,如果它不是:

CASE WHEN _DollarsLY IS NULL THEN 0 ELSE 1 END AS _DistinctCountHackLY 

然後,你可以做這樣的事情在一個多維數據集的計算:

iif(_DistinctCountHackLY=2 or _DollarsLY=null,_DistinctUPCLY-1,_DistinctUPCLY)