Pergunta

Supondo que eu tenha algo assim:

Tabela MySQL

Date        |   Val   
2013/11/22  |   2     
2013/11/23  |   4     
2013/11/25  |   12    
2013/11/30  |   28    
2013/12/02  |   2     

Preciso de uma consulta para obter em outra coluna a soma do valor da linha "atual" mais o valor da linha anterior.Com o exemplo, o resultado seria algo assim:

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

O problema é que não posso usar variáveis ​​porque estou no uma vista.

Como posso fazer isso ?

Qualquer ajuda é apreciada.

Foi útil?

Solução

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
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top