集計範囲の定義
数式で集計の値を定義するために使用されるレコードは、通常、2 つの要因により決定されます。チャートでの作業時は、次の 2 つの要因があります。
- 軸の値 (チャート式での集計の場合)
- 選択
この 2 つの要因によって集計範囲が決まります。
集計の方法
計算で選択や軸、またはその両方を無視する必要がある場合、そのような状況に遭遇することがあります。チャート関数では、TOTAL 修飾子、set 分析、またはその 2 つの組み合せを使用すると、これを実現できます。
TOTAL 修飾子
集計関数内で TOTAL 修飾子を利用すると、軸の値が無視されます。その結果、可能性のあるすべての項目の値について集計が行われます。
TOTAL 修飾子の後には、山括弧で囲んだ 1 つ以上の項目名のリストを続けることができます。これらの項目名は、チャート軸の変数のサブセットにする必要があります。この場合、リストされているものを除き、すべてのチャート軸の変数を無視して計算が行われます。つまり、リストされている軸項目の項目値の組み合わせごとに 1 つの値が返されます。また、現在、チャートの軸ではない項目もリストに含めることができます。これは、軸項目が固定されていない場合に、軸をグループ化する場合に役立ちます。グループ内の変数がすべてリストされている場合、この関数はドリルダウン レベルが変更されても機能します。
set 分析
集計で set 分析を使用すると、項目選択が上書きされます。これにより、軸全体で分割されているすべての値について集計が行われます。
TOTAL 修飾子と set 分析
集計で TOTAL 修飾子と set 分析を使用すると、項目選択が上書きされ、軸が無視されます。
ALL 修飾子
集計で ALL 修飾子を使用すると、項目選択と軸が無視されます。 {1} set 分析ステートメントと TOTAL 修飾子で同等の結果を得ることができます。
=sum(All Sales)
=sum({1} Total Sales)
例
TOTAL 修飾子
以下は、TOTAL 修飾子を使用した相対的なシェアの計算方法を示した例です。Q2 を選択した場合、TOTAL を使用すると軸が無視され、すべての値の合計が計算されます。
Year | Quarter | Sum(Amount) | Sum(TOTAL Amount) | Sum(Amount)/Sum(TOTAL Amount) |
---|---|---|---|---|
- | - | 3000 | 3000 | 100% |
2012 | Q2 | 1700 | 3000 | 56,7% |
2013 | Q2 | 1300 | 3000 | 43,3% |
set 分析
以下は、set 分析を使用した選択前のデータ セット比較方法を示した例です。Q2 が選択されたと想定し、set 定義 {1} で set 分析を使用すると、あらゆる値の合計が計算され、項目選択は無視されますが、軸で分割されます。
Year | Quarter | Sum(Amount) | Sum({1} Amount) | Sum(Amount)/Sum({1} Amount) |
---|---|---|---|---|
- | - | 3000 | 10800 | 27,8% |
2012 | Q1 | 0 | 1100 | 0% |
2012 | Q3 | 0 | 1400 | 0% |
2012 | Q4 | 0 | 1800 | 0% |
2012 | Q2 | 1700 | 1700 | 100% |
2013 | Q1 | 0 | 1000 | 0% |
2013 | Q3 | 0 | 1100 | 0% |
2013 | Q4 | 0 | 1400 | 0% |
2013 | Q2 | 1300 | 1300 | 100% |
TOTAL 修飾子と set 分析
以下は、選択前に実施する set 分析と TOTAL 修飾子を組み合せたすべての軸のデータ セット比較方法を示した例です。Q2 を選択した場合、set 定義 {1] と TOTAL 修飾子の set 分析を使用すると、項目選択と軸は無視され、あらゆる値の合計が計算されます。
Year | Quarter | Sum(Amount) | Sum({1} TOTAL Amount) | Sum(Amount)/Sum({1} TOTAL Amount) |
---|---|---|---|---|
- | - | 3000 | 10800 | 27,8% |
2012 | Q2 | 1700 | 10800 | 15,7% |
2013 | Q2 | 1300 | 10800 | 12% |
例で使用されているデータ:
AggregationScope:
LOAD * inline [
Year Quarter Amount
2012 Q1 1100
2012 Q2 1700
2012 Q3 1400
2012 Q4 1800
2013 Q1 1000
2013 Q2 1300
2013 Q3 1100
2013 Q4 1400] (delimiter is ' ');