[英]IF calculation with aggregate functions
A B UA
1 0 Negative
1 1 Negative
1 1 Positive
2 5 Negative
2 2 Positive
我想計算%UA Negative,以便當A = B時,對UA列中的所有負數進行計數,並將其除以A = B的結果總數。因此,對於A = 1和B = 1,%UA Negative = 1 / 2 = 0.5
我試過了:
IF [A] = [B] THEN
SUM(IF[UA] = 'Negative' THEN 1 ElSE 0 END)/COUNT([UA]) END
但我得到了錯誤:
無法混合匯總和非匯總比較或結果為“ IF”表達式
您可以將第一個IF語句放在Sum and Count aggs中,也可以將ATTR放在第一個IF語句周圍。
SUM(IF [A] = [B] THEN IF[UA] = 'Negative' THEN 1 ElSE 0 END END)/COUNT(IF [A] = [B] THEN [UA] end)
要么
IF ATTR([A]) = ATTR([B]) THEN
SUM(IF[UA] = 'Negative' THEN 1 ElSE 0 END)/COUNT([UA]) END
后者將您的第一個IF語句轉換為agg。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.