Fórum ajuda em consulta sql.. #287785

12/07/2005

0

Boa tarde...

Estou precisando fazer a seguinte uma consulta nun banco de dados , que esta como o apresentado abaixo

Cod    entrada   saida
001       10          
001                 5
001       2
002                 5
003
004       7 
004                 5
004       7
004                 3  
005       6
etc...

Queria que retorna-se somente o ultimo registro de cada Cod....Assim
como resultado da pesquisa , gostaria de ter

cod   entrada  saida
001     2
002              5
003
004              3
005    6


Note que não pode ter registros com codigos dupolicados e somente o ultimo registro de cada codigo é que deva aparecer no resultado da pesquisa

Estou usando query..

Deu para entender :?: :?: :?:

Obrigado...


Marco Salles

Marco Salles

Responder

Posts

12/07/2005

Sremulador

utilize o [b:c6cbb79e05]max[/b:c6cbb79e05] para esta consulta


Responder

Gostei + 0

12/07/2005

Marco Salles

utilize o max para esta consulta


Achu que nun :cry: :cry: :cry:

Talvez o Distinct :?: :?: :?: Ms como garantir que será sempre o Ultimo
Registro que sera retornado para cada codigo :?: :?: :?:


Responder

Gostei + 0

12/07/2005

Beppe

Como vc estabelece qual é o último? Vc deve definir um campo que estabelece essa relação.


Responder

Gostei + 0

12/07/2005

Marco Salles

Como vc estabelece qual é o último? Vc deve definir um campo que estabelece essa relação.


O ultimo , que serve para mim , é o ultimo registro fisicamente lançado na Base de Dados...Assim por exemplo

Cod    entrada   saida 
001       10          
001                 5 
001       2 ------------->>>> foi o ultimo lançado ,do codigo 001
002                 5 ----->>>> foi o ultimo lançado do codigo  002
003      --------------->>>> como não tem nenhum , considerar este ultim
004       7 
004                 5  
004       7 
004                 3 ---->>>> foi o ultimo lançado do codigo 004 
005       6  ---------->>>> foi o ultimo lançado do codigo 005



Responder

Gostei + 0

12/07/2005

Beppe

Eu imaginava que era isso que vc queria, mas um SGDB é uma abstração dos dados, nada pode ser assumido. Pode adicionar um campo data para alcançar o que quer.

Que DB usas?


Responder

Gostei + 0

12/07/2005

Beppe

Considerando que existe um campo autoincremento ordem integer not null, a SQL é esta:

select cod, entrada, saida
from tab
where ordem in (select max(ordem) from tab group by cod)



Responder

Gostei + 0

12/07/2005

Marco Salles

select cod, entrada, saida from tab where ordem in (select max(ordem) from tab group by cod)

Obrigado pelo interesse , mas esta dando este erro :cry: :cry: :cry:

[URL=http://www.imageshack.us][img:883a659ebb]http://img329.imageshack.us/img329/6118/imagembeep9vw.jpg[/img:883a659ebb][/URL]

para o campo Ordem :cry: :cry: :cry:


Responder

Gostei + 0

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

Aceitar