我有一個簡單的問題,我認爲,但我已經搜索並找不到解決方案。我有一個有MeasureA,MeasureB和MeasureC的立方體。並非所有三項衡量指標都有每項記錄的價值,有時它們可以爲零,這取決於是否適用。總計和空值超過平均值SQL Server 2008 Analysis Services
現在我的總數,我需要平均,但平均值不能把空值考慮在內。任何幫助都感激不盡。當我查看度量值時,空值顯示爲零。
我有一個簡單的問題,我認爲,但我已經搜索並找不到解決方案。我有一個有MeasureA,MeasureB和MeasureC的立方體。並非所有三項衡量指標都有每項記錄的價值,有時它們可以爲零,這取決於是否適用。總計和空值超過平均值SQL Server 2008 Analysis Services
現在我的總數,我需要平均,但平均值不能把空值考慮在內。任何幫助都感激不盡。當我查看度量值時,空值顯示爲零。
爲什麼不使用AVG()函數計算平均值?
例如:
(。[措施] [MEASUREA] + [措施] [MEASUREB] + [措施] [MEASUREC])/ 3
當然,這僅適用於如果該平均值將只有3個措施組成。我想只有真正使用AVG()函數,如果你需要評估在一組:
http://msdn.microsoft.com/en-us/library/ms146067.aspx
默認情況下,SQL Server會忽略空值 - 因此消息你 - Warning: Null value is eliminated by an aggregate or other SET operation.
例子:
create table #test (id int null)
insert #test values (1)
insert #test values (1)
insert #test values (null)
insert #test values (1)
select avg(id), sum(id), count(id) from #test
您可以使用NonEmpty()MDX函數來包裝您正在平均出來的集合嗎?
對於每一個措施,它的屬性去源列設置,選擇NullProcessing =「保存」,然後該措施將返回NULL,而不是0