SELECT
t.Date,
t.Val,
COALESCE((SELECT Val FROM Table1 sq WHERE sq.Date < t.Date ORDER BY sq.Date DESC LIMIT 1), 0) + t.Val AS whatever
FROM
Table1 t
ORDER BY t.Date
- 그것이 작동하는 것을 본다 sqlfiddle
문제
다음과 같은 것이 있다고 가정합니다.
MySQL 테이블
Date | Val
2013/11/22 | 2
2013/11/23 | 4
2013/11/25 | 12
2013/11/30 | 28
2013/12/02 | 2
다른 열에 "현재"행 값의 합을 추가하려면 쿼리가 필요합니다. 예를 들어, 결과는 다음과 같습니다.
Date | Value | Total
2013/11/22 | 2 | 2
2013/11/23 | 4 | 6 <--- Because 4+2 = 6
2013/11/25 | 12 | 16
2013/11/30 | 28 | 40
2013/12/02 | 2 | 30
문제는 내가 켜져 있기 때문에 변수를 사용할 수 없다는 것입니다. 관점.
어떻게 할 수 있습니까?
모든 도움이 감사합니다.
해결책
SELECT
t.Date,
t.Val,
COALESCE((SELECT Val FROM Table1 sq WHERE sq.Date < t.Date ORDER BY sq.Date DESC LIMIT 1), 0) + t.Val AS whatever
FROM
Table1 t
ORDER BY t.Date