Como obter um dado do registro anterior no MySQL

SQL

MySQL

Banco de Dados

Análise de requisitos

04/06/2018

Imagine que você tem uma tabela com o fluxo de caixa de sua empresa. Você faz uma consulta simples que te retorna o saldo do mês. Simples assim: duas colunas, onde a primeira exibe o mês e a segunda o saldo correspondente ao mês (considere que você já tenha esses dados prontos, não necessitando nem mesmo gerar somatórios ou agrupamentos).

Mas você quer saber o acumulado mês a mês. Numa planilha eletrônica é simples: numa nova coluna, basta somar o saldo do mês atual com o saldo do mês anterior e pronto.

E no MySQL, como fazer isso DE FORMA SIMPLES. Desculpem-me destacar a frase "DE FORMA SIMPLES", mas é porque encontrei na Internet as mais variadas maneiras de fazer isso, porém cada uma mais complexa que a outra. Quero um jeito simples e objetivo. Será que a ferramenta não possui algo nativamente que dê esse resultado (tipo, LAST, PREVIOUS, etc)?

Algumas das soluções que encontrei na Internet, fazendo o uso de subquerys, tornam impraticável o seu uso devido ao tempo de processamento.

Volto a dizer - procuro por algo rápido e descomplicado.

Grato.
Gilberto Metzker

Gilberto Metzker

Curtidas 0

Melhor post

Emerson Nascimento

Emerson Nascimento

05/06/2018

acredito que o mais rápido e descomplicado seja mesmo subqueries.
se o banco estiver bem modelado, com os índices necessários, não haverá problema com o processamento.
GOSTEI 2

Mais Respostas

Venancio Alves

Venancio Alves

04/06/2018

Olá Gilbertometzker!

O MySQL e outros bancos de dados com os seus SGBDS não possuem funções nativas ou algo semelhante para fazer este tipo de procedimento, pois trata-se de um repositório de dados, mas como Emerson respondeu acima, basta você verificar se a modelagem do seu banco está bem organizada e se possui índices, faça tuning de Dados das consultas que criou, desta forma não terá problemas com o tempo de processamento..
GOSTEI 1
POSTAR