56,677
社区成员
发帖
与我相关
我的任务
分享
UPDATE a SET a.down7=(
SELECT SUM(down) FROM downData b WHERE b.ndate<=a.ndate AND b.ndate>dateadd(d, -7,a.ndate)
)
FROM downData a
UPDATE downData AS t
INNER JOIN
(SELECT tt.ndate,
(SELECT SUM(down) FROM downData
WHERE ndate <= tt.ndate AND ndate >=
DATE_ADD(tt.ndate, INTERVAL -6 DAY)) AS mds
FROM downData AS tt
) AS ttt
ON ttt.ndate=t.ndate
SET t.down7=ttt.mds
SELECT t1.*,
(SELECT SUM(down) FROM downData
WHERE ndate<t1.ndate AND ndate>=DATE_ADD(t1.ndate, INTERVAL -7 DAY)) AS mdown
FROM downData AS t1
ORDER BY ndate