2013-12-10 80 views
0

如何解決以下表達式:兩個聚集在一個單一的表達

sum({<Category={'Internal Ops SLA'}>}(RangeSum(Above(sum(InternalOpsSLA),0,12))/TargetOpsSLA)*Weight) 

這是給在表達錯誤,因爲雙總和。

根據set expression修飾符中的類別選擇乘數Weight值。有沒有其他方法,除了只有變量,因爲我需要總結最終結果,對於上述表達式?

+0

我不知道爲什麼內表達{}沒有在這個問題來了。 {}中的表達式是 user3011919

+0

它是第一次在堆棧中沒有回覆。猜猜很多人都在度假。 – user3011919

+0

不知道數據是什麼樣的,以及你的目標是什麼樣子,很難提供幫助。這個我們只是一個猜測,但你有沒有試過在你的表達式中總結'TargetOpsSLA'? '總和( {<類別= { '內部OpsSLA'}>} ( RangeSum(上述(總和(InternalOpsSLA),0,12))/ SUM(TargetOpsSLA) ) *重量 )' – Scheballs

回答

0

我知道這篇文章很舊。迴應它,認爲這可能會有所幫助。

我在qlikview中遇到了類似的問題,同時嘗試計算平均值總和。有錯誤信息:

(Error in expression: Nest Aggregation not allowed) 

我意識到解決這個問題的方法之一就是使用聚合函數。而是將它們分組一樣的:

sum(avg(<Dimension_Name>condition)) 

我分組它們爲:

Sum(Aggr(Avg(condition), Dimension_Name)) 

和這個工作很適合我。

因此,對於你的問題,我會嘗試這樣的事:

sum(aggr(if(Category = {'Internal Ops SLA'},(RangeSum(Above(sum(InternalOpsSLA),0,12))/TargetOpsSLA)*Weight),'Dimension Name'))