計算テンプレートの使用

データ分析ツールには、ビジネス・インテリジェンス・アプリケーションで一般的に必要とされるあらゆる計算用のテンプレートが用意されています。

次の各トピックでは、ツールで計算テンプレートとして利用できる計算の種類について説明します。

累積集計

累積計算では、1番目の期間から現在のメンバーまでを計算するか、または最後の期間から現在のメンバーにさかのぼって計算をします。

このツールには、累積計算に関する集計方法がいくつか用意されています:

  • 累積平均: 対象期間の累積平均を計算します。

  • 累積最大: 対象期間の最大値を計算します。

  • 累積最小: 期間全体の最小値を計算します。

  • 累積合計: 対象期間の累計を計算します。

メジャー、時間ディメンション、階層を選択します。時間範囲の選択については、『Oracle OLAPユーザーズ・ガイド』の期間の範囲の選択に関する項を参照してください。

累積計算の例

次のテンプレートは、累積最小を使用して計算済メジャーを定義します。

Cumulative minimum of SALES in the TIME dimension and TIME.CALENDAR hierarchy within ancestor at level TIME.CALENDAR_YEAR. Total from beginning to current member.

この計算済メジャーに対する問合せの結果には、暦年2021年の子孫の値が表示されます。四半期の最小値はQ1-21で始まり、Q4-21で終わります。月はJan-21で始まり、Dec-21で終わります。

TIME     TIME_LEVEL                SALES  MIN_SALES
-------- -------------------- ---------- ----------
Q1.21    CALENDAR_QUARTER       32977874   32977874
Q2.21    CALENDAR_QUARTER       35797921   32977874
Q3.21    CALENDAR_QUARTER       33526203   32977874
Q4.21    CALENDAR_QUARTER       41988687   32977874
JAN-21   MONTH                  11477898   11477898
FEB-21   MONTH                  10982016   10982016
MAR-21   MONTH                  10517960   10517960
APR-21   MONTH                  11032057   10517960
MAY-21   MONTH                  11432616   10517960
JUN-21   MONTH                  13333248   10517960
JUL-21   MONTH                  12070352   10517960
AUG-21   MONTH                  11108893   10517960
SEP-21   MONTH                  10346958   10346958
OCT-21   MONTH                  14358605   10346958
NOV-21   MONTH                  12757560   10346958
DEC-21   MONTH                  14872522   10346958

前回および将来の期間

データ分析ツールには、前回または将来の期間に関する計算がいくつか用意されています。

前または将来の期間に使用される計算を次に示します。

  • 前回の期間: 前の期間のメジャーの値を戻します。

  • 前期間との相違: 現在の期間の値と前の期間の間の差異を計算します。

  • 前期間との相違率: 現在の期間の値と前の期間の値の相違率を計算します。

  • 将来期間: 後の期間のメジャーの値を戻します。

  • 将来期間との相違: 現在の期間の値と後の期間の間の差異を計算します。

  • 将来期間との相違率: 現在の期間の値と後の期間の値と相違率を計算します。

前の期間または将来期間の計算を作成するときは、メジャー、時間ディメンション、階層、および現在の期間からいくつ前(または後)の期間かを選択します。

前の期間の例

次のテンプレートは、前回の期間を使用して計算済メジャーを定義します。

Prior period for measure SALES in TIME dimension and TIME.CALENDAR hierarchy 1 period ago.

この計算済メジャーに対する問合せの結果は次のとおりです。PRIOR_PERIOD列に、Calendar階層の同じレベルで1つ前の期間におけるSalesの値が示されます。

TIME     TIME_LEVEL           SALES PRIOR_PERIOD
-------- -------------------- ---------- ------------
2020     CALENDAR_YEAR         136986572    144290686
2021     CALENDAR_YEAR         140138317    136986572
Q1.20    CALENDAR_QUARTER       31381338     41988687
Q2.20    CALENDAR_QUARTER       37642741     31381338
Q3.20    CALENDAR_QUARTER       32617249     37642741
Q4.20    CALENDAR_QUARTER       35345244     32617249
Q1.21    CALENDAR_QUARTER       36154815     35345244
Q2.21    CALENDAR_QUARTER       36815657     36154815
Q3.21    CALENDAR_QUARTER       32318935     36815657
Q4.21    CALENDAR_QUARTER       34848911     32318935

現在までの期間

現在までの期間を求める関数は、現在の期間に至る一連の期間(親が同じもの)に対して計算を行います。

現在までの期間を計算する関数には次のものがあります。

  • 現在までの期間: 現在の期間までの値を計算します。

  • 前期間前の期間: 前の期間までのデータ値を計算します。

  • 前期間前の期間間の相違: 現在の時間までのデータ値と前期間からのデータ値の差を計算します。

  • 前期間からの期間間の相違率: 現在の時間までのデータ値と前期間からのデータ値の相違率を計算します。

現在までの期間の計算を作成するときは、次の集計方法のいずれかを選択します。

  • 合計

  • 平均

  • 最大

  • 最小

その他に、メジャー、時間ディメンション、階層も選択します。

現在までの期間の例

次のテンプレートは、現在までの期間を使用して計算済メジャーを定義します。

Gregorian Year to date for SALES in the TIME dimension and TIME.CALENDAR hierarchy. Aggregate using MINIMUM from the beginning of the period.

この計算済メジャーに対する問合せの結果は次のとおりです。MIN_TO_DATE列に、該当のレベルおよび年の中で最小のSALESの値が表示されます。

TIME     TIME_LEVEL                SALES MIN_TO_DATE
-------- -------------------- ---------- -----------
Q1.21    CALENDAR_QUARTER       36154815    36154815
Q2.21    CALENDAR_QUARTER       36815657    36154815
Q3.21    CALENDAR_QUARTER       32318935    32318935
Q4.21    CALENDAR_QUARTER       34848911    32318935
JAN-21   MONTH                  13119235    13119235
FEB-21   MONTH                  11441738    11441738
MAR-21   MONTH                  11593842    11441738
APR-21   MONTH                  11356940    11356940
MAY-21   MONTH                  13820218    11356940
JUN-21   MONTH                  11638499    11356940
JUL-21   MONTH                   9417316     9417316
AUG-21   MONTH                  11596052     9417316
SEP-21   MONTH                  11305567     9417316
OCT-21   MONTH                  11780401     9417316
NOV-21   MONTH                  10653184     9417316
DEC-21   MONTH                  12415325     9417316

平行期間

平行期間とは、現在の期間とレベルは同じであるが、前の期間における親が異なる期間のことです。たとえば、四半期レベルおよび月レベルで、現在の売上を前年の売上と比較する場合に使用します。

データ分析ツールには、平行期間に関する関数がいくつか用意されています:

  • 平行期間: 平行期間の値を計算します。

  • 平行期間との相違: 現在の期間の値と平行期間の間の値の差を計算します、

  • 平行期間との相違率: 現在の期間の値と平行期間の間の値の相違率を計算します、

平行期間を指定するときは、特定のレベルと、現在の期間からいくつ前の期間かを指定します。また、2つの期間が厳密に一致しない場合(たとえば、2月(28日間)と1月(31日間)の1日の売上を比較する場合など)の処理を決めることもできます。

その他に、メジャー、時間ディメンション、階層も選択します。

平行期間の例

次のテンプレートは、平行期間を使用して計算済メジャーを定義します。

Parallel period for SALES in the TIME dimension and TIME.CALENDAR hierarchy 1 TIME.CALENDAR.QUARTER ago based on position from beginning to ending of period.

この計算済メジャーに対する問合せの結果では、次のように2つの四半期の各月が表示されます。平行関係にある月は、前の四半期と位置が同じ月です。JUL-21の前回の期間はAPR-21AUG-21の前回の期間はMAY-21SEP-21の前回の期間はJUN-21となります。

TIME    PARENT     SALES   LAST_QTR
-------- ---------- ---------- ----------
APR-21   CY2006.Q2    11356940   13119235
MAY-21   CY2006.Q2    13820218   11441738
JUN-21   CY2006.Q2    11638499   11593842
JUL-21   CY2006.Q3     9417316   11356940
AUG-21   CY2006.Q3    11596052   13820218
SEP-21   CY2006.Q3    11305567   11638499

移動集計

移動集計は、現在の期間の前後の期間にわたって実行されます。

データ分析ツールには、移動集計に関する集計方法がいくつか用意されています:

  • 移動平均: 特定の数の期間におけるメジャーの平均値を計算します。

  • 移動最大: 特定の数の期間におけるメジャーの最大値を計算します。

  • 移動最小: 特定の数の期間におけるメジャーの最小値を計算します。

  • 移動合計: 特定の数の期間におけるメジャーの合計値を戻します。

メジャー、時間ディメンション、階層を選択します。また、範囲(『Oracle OLAPユーザーズ・ガイド』の期間の範囲の選択に関する項を参照)と、計算に含める現在の期間の前後の期間数を選択できます。

移動集計の例

次のテンプレートは、移動最小を使用して計算済メジャーを定義します。

Moving minimum of SALES in the TIME dimension and TIME.CALENDAR hierarchy. Include 1 preceding and 1 following members within level.

この計算済メジャーに対する問合せの結果には、暦年2021年の子孫の値が表示されます。それぞれの最小売上の値は、現在の値とその直前および直後の値の中で最も小さい値です。この計算は、キューブ内のレベルのすべてのメンバーに対して実行されています。

TIME     TIME_LEVEL           SALES  MIN_SALES
-------- -------------------- ---------- ----------
Q1.21    CALENDAR_QUARTER       32977874   32977874
Q2.21    CALENDAR_QUARTER       35797921   32977874
Q3.21    CALENDAR_QUARTER       33526203   33526203
Q4.21    CALENDAR_QUARTER       41988687   31381338
JAN-21   MONTH                  11477898   10982016
FEB-21   MONTH                  10982016   10517960
MAR-21   MONTH                  10517960   10517960
APR-21   MONTH                  11032057   10517960
MAY-21   MONTH                  11432616   11032057
JUN-21   MONTH                  13333248   11432616
JUL-21   MONTH                  12070352   11108893
AUG-21   MONTH                  11108893   10346958
SEP-21   MONTH                  10346958   10346958
OCT-21   MONTH                  14358605   10346958
NOV-21   MONTH                  12757560   12757560
DEC-21   MONTH                  14872522   12093518

共有

シェアを使用すると、現在のディメンション・メンバーのメジャーの値を、同じディメンションの関連メンバーの値と比較した割合を計算できます。

関連メンバーとして次のいずれかを選択できます。

  • 階層の最上位: 合計に対して各メンバーの比率を計算します。

  • メンバーの親: それぞれの親に対する各メンバーの比率を計算します。

  • レベルのメンバーの祖先: それぞれの祖先(階層内の特定の上位レベルのメンバー)に対する各メンバー比率を計算します。

シェア計算を作成するときは、メジャー、ディメンションおよび階層を選択します。また、結果に100を掛けることにより、比率をパーセンテージで表すようにすることもできます。

シェアの例

次のテンプレートは、SHAREを使用して計算済メジャーを定義します。

Share of measure SALES in PRODUCT.PRIMARY hierarchy of the PRODUCT dimension as a ratio of top of hierarchy.

この計算済メジャーに対する問合せの結果は次のとおりです。TOTAL_SHARE列に、選択した製品の合計に対する比率がパーセント単位で表示されます。

PRODUCT           PROD_LEVEL         SALES TOTAL_SHARE
-------------------- --------------- ---------- -----------
Total Product        TOTAL            144290686         100
Hardware             CLASS            130145388          90
Desktop PCs          FAMILY            78770152          55
Portable PCs         FAMILY            19066575          13
CD/DVD               FAMILY            16559860          11
Software/Other       CLASS             14145298          10
Accessories          FAMILY             6475353           4
Operating Systems    FAMILY             5738775           4
Memory               FAMILY             5430466           4
Modems/Fax           FAMILY             5844185           4
Monitors             FAMILY             4474150           3
Documentation        FAMILY             1931170           1

ランク

ランクでは、選択したメジャーの値に基づいてディメンションの値をソートします。ランク計算を定義するときは、ディメンション、階層およびメジャーを選択します。

同一値を処理するメソッドを選択できます。

  • ランク: 同じ値には同じランクを割り当てるため、メンバーよりもランク数が少なくなることがあります。たとえば、5つのディメンション・メンバーに対して1、12334が返されることがあります。

  • 稠密ランク: 同一の値に同じ最小順位を割り当てます。たとえば、5つのディメンション・メンバーに対して1、12335が返されることがあります。

  • 平均ランク: 同じ値に同じ平均ランクを割り当てます。たとえば、5つのディメンション・メンバーに対して1、123.53.55が返されることがあります。

ディメンション・メンバーを順位付けするグループを選択することもできます。

  • メンバーのレベル: 同じレベルのメンバーを順位付けします。

  • メンバーの親: 同じ親を持つメンバーを順位付けします。

  • レベルのメンバーの祖先: 階層内の特定の上位レベルに同じ祖先を持つメンバーを順位付けします。

ランクの例

次のテンプレートは、ランクを使用して計算済メジャーを定義します。

Rank members of the PRODUCT dimension and PRODUCT.PRIMARY hierarchy based on measure SALES. Calculate rank using RANK method with member's parent in order lowest to highest. Rank NA (null) values nulls last.

この計算済メジャーに対する問合せの結果は、次のように製品がRANKで順位付けられた形で表示されます。

PRODUCT             SALES       RANK
-------------------- ---------- ----------
Monitors                4474150          1
Memory                  5430466          2
Modems/Fax              5844185          3
CD/DVD                 16559860          4
Portable PCs           19066575          5
Desktop PCs            78770152          6