TALLYファンクションは、1つ以上の関連ディメンションの各値に対応するディメンションの値の数をカウントするファンクションです。
パラメータ
値をカウントする対象のディメンション。related-dimensionsを指定すると、TALLYは単一の関連ディメンションの各値、または複数の関連ディメンションの値の各組合せに対応するdimensionの値の数をカウントします。related-dimensionsを指定しない場合、TALLYはディメンション内の値の数をカウントします。dimensionの現行のステータスにある値のみがカウントされます。
結果の1つ以上の関連ディメンション。これらは、dimensionに関連付けられる必要があります。または、ディメンション名のかわりにリレーションの名前を指定でき、これによって、ディメンション間のリレーションが複数ある際に使用するリレーションを選択できます。related-dimensionsが指定されていない場合、TALLYはdimensionの現行のステータスにある値の総数を返します。
使用上の注意
TALLYがNAを返す場合
TALLYは、対応するdimension値がないrelated-dimensionの位置にはNA
を返します。
DWMQYディメンションとともに使用するTALLY
expressionがDAY、WEEK、MONTH、QUARTERまたはYEAR型のディメンションによりディメンション化されている場合は、related-dimensionとして、他のどのDAY、WEEK、MONTH、QUARTERまたはYEAR型のディメンションでも指定できます。Oracle OLAPでは、ディメンション間の暗黙的なリレーションを使用します。1つのDAY、WEEK、MONTH、QUARTERまたはYEARディメンションと別のディメンションとのマッピング(たとえば週から月)を制御するには、2つのディメンション間に明示的リレーションを定義し、そのリレーションの名前をTALLYファンクションのrelated-dimension引数として指定します。
Oracle OLAPは、関連ディメンションの期間ごとに、ターゲット期間に終了するすべてのソース期間を計算します。この方法は、どのディメンションがより上位の集計期間を保持しているかにかかわらず、適用されます。
例
例8-130 TALLYの結果の生成
ここでは、TALLYを使用して、各部門によって生産される製品の数を調べます。division.product
リレーションは、各製品が属する部門を記録します。次の例は、division.product
のレポートです。
PRODUCT DIVISION.PRODUCT --------------------------------- Tents Camping Canoes Camping Racquets Sporting Sportswear Clothing Footwear Clothing
次の文には、各部門によって生産される製品の数を出力するTALLYが含まれています。
REPORT HEADING 'Products' TALLY(product, division)
この文によって生成されるレポートは次のとおりです。
DIVISION Products ------------------------- Camping 2 Sporting 1 Clothing 2