Consulta em tabela SQL Server

30/01/2006

0

Pessoal,

Meu problema é o seguinte. Tenho uma tabela que armazena os movimentos de estoque: MovEstoque. Esta tabela contém, entre outros, os campos CodMov (código do movimento), CodProd (código do produto), DataMov (data do movimento), QdeMov (quantidade do movimento) e CustoUnit (Custo unitário). Quero efetuar uma consulta que me retorne o último movimento de cada produto.

Alguém pode me ajudar?

Obrigado

JLuiz


Jluiz Gsantos

Jluiz Gsantos

Responder

Posts

31/01/2006

Blumm

Olá JLuiz

Tente a seguinte consulta:

Select * From MovEstoque A
Where Exists
(Select 1 From MovEstoque B
Where A.CodProd = B.CodProd
And B.DatMov = (Select Max(DatMov)
From MovEstoque C
Where A.CodProd = C.CodProd)
Order by CodProd

Um Abraço


Responder

31/01/2006

Jluiz Gsantos

Obrigado pela dica, mas não funcionou. A consulta retorna com todos os movimentos e não o último movimentode cada produto.


Responder

31/01/2006

Emerson Nascimento

essa tabela não tem um identificador único para o registro?


Responder

31/01/2006

Jluiz Gsantos

Infelizmente não. É justamente o que está dificultando a pesquisa. O que poderia servir como identificador único é a utilização de 2 campos: um identifica o movimento propriamente dito (ChvMov) e o outro o item dentro do movimento (ItemMov).


Responder

31/01/2006

Emerson Nascimento

uma consulta assim:

Select
  *
From
  MovEstoque A
Where
  A.DatMov = (Select
                max(B.DatMov)
              From
                MovEstoque B
              Where B.CodProd = A.CodProd)
Order by
  A.CodProd


retornaria os últimos movimentos de um determinado produto...
mas para retornar o último seria melhor se o registro tivesse um campo ID...


Responder

01/02/2006

Jluiz Gsantos

Também não funcionou. Acho que só mesmo utilizando procedure. Em toda caso, obrigado pela tentativa.


Responder

01/02/2006

Jluiz Gsantos

Também não funcionou. Acho que só mesmo utilizando procedure. Em todo caso, obrigado pela tentativa.


Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar