0

私がそのようなテーブルを持っているとしましょう:

IDofemployee category value importance range  date
1            1        2     5          1       2013-04-17
1            1        3     4          2       2013-04-17
1            2        4     3          1       2013-04-17
2            1        7     2          1       2013-04-18
2            1        3     2          2       2013-04-18

そして今、私はfirebirdのSQLクエリの結果として次のようなものを持ちたいと思っています:

(範囲が同じ場合、同じ範囲のすべての値の平均を取る必要がありますが、従業員ごとに個別に)

emp    wAVG                           date
1      (([2*5+4*3]/2)+[3*4])/3 =7.6   2013-04-17
2      (7*2+3*2)/2=10                 2013-04-18

つまり、emp1 では行 1 と 3 から avg を取得する必要があるためです。これは、範囲がどちらの場合も =1 であるため、行 1 から取得する = 2*5(値*重要度) から行 3 =4*3 合計 2*5 + 4 を取得するためです。 *3 同じ範囲の行が 2 行あるため、この合計を 2 で割ります。

4

1 に答える 1