Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Jader Lopes

Query para exibir saldo de produtos em estoque por dia

Recommended Posts

Boa noite, pessoal.

 

Estou quebrando bastante a cabeça pra resolver um problema em SQL Server mas não cheguei a uma solução, gostaria muito da ajuda de vocês.

 

 

Basicamente, preciso apontar qual dia do ano de 2015 tive a maior quantidade de produtos em estoque e quantos eram.

 

 

 

Minha tabela tem a seguinte estrutura:

 

 

DATA; PRODUTO; QUANTIDADE

 

 

Quando entram em estoque, tenho uma linha com valor positivo na coluna QUANTIDADE. Quando algo é vendido, tenho uma linha com valor negativo na coluna QUANTIDADE.

 

 

DATA; PRODUTO; QUANTIDADE

04/07/2016; PRODUTO X; +10

04/07/2016; PRODUTO X; -1

04/07/2016; PRODUTO X; -8

05/07/2016; PRODUTO X; +10

05/07/2016; PRODUTO X; -2

05/07/2016; PRODUTO X; -1

06/07/2016; PRODUTO X; +1

 

 

Já fiz utilizando SUM(QUANTIDADE) agrupando por data, porém ele mostra a movimentação daquele dia e não a quantidade real em estoque (como eu realmente preciso).

 

 

 

Vocês tem alguma sugestão? Existe alguma forma de fazer o SUM com GROUP BY somar todos os registros anteriores a determinada data, de forma que eu tenha um retorno como na tabela abaixo?

 

 

DATA; PRODUTO; QTDE_ESTOQUE

04/07/2016; PRODUTO X; 2

05/07/2016; PRODUTO X; 9

04/07/2016; PRODUTO X; 10

 

 

Att,

Jader Lopes

Compartilhar este post


Link para o post
Compartilhar em outros sites

Motta,

 

Não consegui utilizar o Analytical Functions (Over) exatamente como eu precisava, mas pensei em outra forma de resolver o problema:

 

Criei uma função que recebe uma data e retorna o saldo de produtos até aquele dia, então utilizo essa função onde preciso saber a quantidade. Pode não ser a melhor forma de resolver a questão, mas funcionou pra mim e solucionou o problema.

 

De toda forma, agradeço a colaboração indicando o AF. Não conhecia algumas funções dele e com certeza vou usar em outros sistemas.

 

 

Obrigado!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Pelo que vi Sql Sever não facilita tanto quanto o Oracle nas AF , no Oracle isto é relativamente simples.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.