すでにsumを使った計算フィールドAにsum({計算フィールドA})このようにさらにsumしようとするとエラーが発生してしまいます。
(エラー内容:{{aggregateFunction1}} や {{aggregateFunction2}} のような集計関数のネスティングは許可されません。)
<計算フィールドAの内容>
ifelse(substring(toString({値A}), 0, 1) = ‘0’,sum({値B}), sum({値B}) * -1)
<やりたいこと>
上記の計算フィールドをさらにsumで囲みたい
イメージ
sum(ifelse(substring(toString({値A}), 0, 1) = ‘0’,sum({値B}), sum({値B}) * -1))
LAC-A 関数も以下の形で試してみたがうまくいきません。
sum({計算フィールドA},[値C])
そもそもsumのネスト事態可能なのでしょうか?
@ry_yrrr
QuickSight Community にご質問いただき、ありがとうございます!
ご指摘いただいたとおり、現在 sum のような集計関数の入れ子はサポートされておりません。
sumOver (LAC-W 関数)をご利用いただくことで、想定の計算は実現できそうでしょうか?
sumOver(ifelse(substring(toString(sum(値A)),0,1)='0',sum(値B),sum(値B)),[])
ぜひご確認をよろしくお願いいたします。
Wakana
3
@ry_yrrr
ビジュアル上で何を表現されたいのか分からないので、回答が難しいのですが、
集計関数のネストに関しては、サポートしているのは、以下の2種類です。
Aggegatation(LAC-A())
例:max(sum({Sales},[{Country)}
LAC-A(LAC-W())
例:sum(sumOver(Sales,[Product],PRE_AGG),[Country]
詳細は以下ドキュメントの制限事項に記載されているので、ご参照ください。
返答ありがとうございます。
提示してくださった方法でやってみたのですが想定していた結果が得られなかったので別のアプローチで作成することにしました。
分かりやすい説明ありがとうございました!