|
▼わん さん:
おはようございます。
こちらも SQL の試行錯誤の繰り返しです(笑)
答だけでなく、得点・減点の累計も必要な場合…
SELECT T.ID,
T.年月,
T.クラス,
T.得点,
(SELECT Sum(S.得点)
FROM テーブル2 AS S
WHERE Val(S.年月) <= Val(T.年月) AND
S.ID <= T.ID AND
S.クラス = T.クラス) AS 得点累計,
T.減点,
(SELECT Sum(S.減点)
FROM テーブル2 AS S
WHERE Val(S.年月) <= Val(T.年月) AND
S.ID <= T.ID AND
S.クラス = T.クラス) AS 減点累計,
[得点]-[減点] AS 答,
[得点累計]-[減点累計] AS 答累計
FROM テーブル2 AS T
ORDER BY T.ID;
クエリの中で再計算させている為、速度に不安がありますね。
答の累計だけを出せれば良いのでしたら、
SELECT T.ID,
T.年月,
T.クラス,
(SELECT Sum(S.得点-S.減点) AS 答
FROM テーブル2 AS S
WHERE Val(S.年月) <= Val(T.年月) AND
S.ID <= T.ID AND
S.クラス = T.クラス) AS 答累計
FROM テーブル2 AS T
ORDER BY T.ID;
クラスの所だけ 不等号(<=)でなく等号(=)である事に注意して下さい。
|
|