Edson Soares
não registrado
|
|
Postada em 11/08/2006 14:02 hs
Por favor, poderiam ajudar com a seguinte instrução: Arquivo de Produtos : ProdutoID Descricao 1 Abacaxi 2 Abacate Arquivo de Estoque : EstoqueID ProdutoID Data Entradas Saidas Saldo 592 1 01/01/2006 10 0 10 631 1 10/01/2006 0 2 8 3 2 10/02/2006 5 0 5 380 2 10/03/2006 5 0 10 Preciso listar : Produto Descrição Saldo 1 Abacaxi 8 2 Abacate 10 Gostaria de fazer somente em uma instrução sql, ou seja, listar o arquivo de produtos e o último registro do estoque de cada produto. Grato pela atenção.
|
|
|
|
|
Postada em 11/08/2006 14:37 hs
select produto.descricao,produto.produtoid,estoque.saldo,max(data) from produto,estoque where produto.produtoid = estoque.produtoid group by produto.produtoid,produto.descricao,estoque.saldo Espero ter ajudado
|
|
|
|
Postada em 11/08/2006 14:39 hs
SELECT Produtos.ProdutoID, Produtos.Descricao, Max(Estoque.Saldo) AS ÚltimoDeSaldo FROM Produtos INNER JOIN Estoque ON Produtos.ProdutoID = Estoque.ProdutoID GROUP BY Produtos.ProdutoID, Produtos.Descricao;
dsmn
|
|
|
|
Postada em 11/08/2006 14:42 hs
Desculpa troque o MAx(Estoque.Saldo) por Max(Estoque.Saldo), a resposta do Anderson funciona desde que voce não tenha 2 lançamentos no mesmo dia
dsmn
|
|
|
|
Postada em 11/08/2006 15:10 hs
Olá Edson... tente assim: SELECT Produtos.ProdutoID, Produtos.Descricao, Estoque.data,Estoque.Saldo FROM Produtos INNER JOIN Estoque ON Produtos.ProdutoID = Estoque.ProdutoID WHERE Produtos.PRODUTOID IN (1,2) AND Estoque.Data IN (SELECT max(Data) FROM Estoque WHERE ProdutoID IN (1,2) group by ProdutoID) onde estiver 1,2 vc passa o código dos produtos (1,2,30,412, etc) Faça alguns testes... eu fiz um teste simples e deu certo mas vc deve ter uma gama de dados maior... qq dúvida é só postar ae t+
|
|
|
Edson Soares
não registrado
|
|
Postada em 11/08/2006 15:13 hs
Obrigado pela atenção, mas continua vindo todos os registros do estoque.
|
|
|