次のテーブル構造があります。
ID Criteria01 Criteria02 Criteria03 ... CriteriaN Score
階層基準によって集計されたスコア結果を返すプロシージャを作成する必要があります。
たとえば、基準が
Criteria01 -> Criteria03 -> ID
次の階層形式でデータを返す必要があります。
Criteria03 Score
Criteria01 Score
ID Score
または、次のサンプル データがある場合:
結果は次のようになります。
説明:
(階層レベル 1) Criteria01 の各値の平均スコアの計算または
SELECT [Criteria01]
,AVG([SCORE])
FROM DataSource
GROUP BY [Criteria01]
(階層レベル 2) Criteria03 の各値の平均スコアの計算または
SELECT [Criteria03]
,AVG([SCORE])
FROM DataSource
GROUP BY [Criteria03]
(階層レベル 3) ID ごとにスコアを表示します。
上記は、計算がどのように行われるかを示しています。あとは、ID 行をその親の Criteria03 行と照合し、次に Criteria03 行をその親 (Criteria01) 行と照合します。
したがって、さまざまな階層基準を持つことができ、階層レベルの列で結果を返す必要があります。
私の実際のケースでは、物事はもう少し複雑であるため、私が提供したサンプルデータに対して実用的なソリューションを探しているわけではなく、必要としないことに注意してください。
私が探しているのは、すでにそのような状況にある人から、これを行うための良いアプローチのアドバイスまたはアイデアです.