Два агрегации в одном выражении

Как решить приведенное ниже выражение:

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

Это дает ошибку в выражении из-за двойной суммы.

Значение веса множителя выбирается в соответствии с категорией в модификаторе набора выражений. Есть ли другой способ, кроме переменной с ТОЛЬКО, поскольку мне нужно суммировать конечные результаты, для вышеприведенного выражения?

1 ответ

Я знаю, что этот пост довольно старый. Отвечая на это, думая, что это может помочь немногим.

Я столкнулся с аналогичной проблемой в 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'))
Другие вопросы по тегам