AJUDA PARA MONTAR UMA QUERY

PERCIFILHO 20/07/2016 09:57:28
#464959
Bom dia amigos, venho pedir uma ajuda para montar uma query que não estou conseguindo:
Vou tentar explicar em detalhes para ficar mais fácil de entender:

Tenho uma tabela de Itens com esses registros:

Id | Descrição | CodItemForn | Unidade
1 | ProdutoA | 27185 | PC
2 | ProdutoB | 27800 | PC
3 | ProdutoC | 27913 | PC


E tenho uma tabela de Lançamentos com esses registros:


Id | Nota | CodForn | CodItemForn | CodInterno | CfopForn | CfopEntr | Fin | Unitario
1 | 415 | 1 | 27185 | 1010101 | 5102 | 1101 | 1.1 | 125,00
2 | 415 | 1 | 27185 | 1010101 | 5102 | 1101 | 1.1 | 125,00
3 | 33 | 1 | 27189 | 1010101 | 5102 | 1101 | 1.1 | 132,33
4 | 1916 | 2 | 000.138 | 1010101 | 5102 | 1101 | 1.1 | 131,00
5 | 1916 | 2 | 000.138 | 1010101 | 5102 | 1101 | 1.1 | 131,00
6 | 1916 | 2 | 000.138 | 1010101 | 5102 | 1101 | 1.1 | 131,00
7 | 1916 | 2 | 000.138 | 1010101 | 5102 | 1101 | 1.1 | 131,00
8 | 245 | 1 | 27185 | 1010101 | 5102 | 1101 | 1.1 | 138,00
9 | 128 | 1 | 27185 | 1010101 | 5102 | 1101 | 1.1 | 129,85
10 | 128 | 1 | 27185 | 1010101 | 5102 | 1101 | 1.1 | 129,85

E tenho um formulário onde o usuário irá escolher um fornecedor e um código do item;
Preciso fazer um Select para encontrar todos os lançamentos feitos para esse Item desse Fornecedor;
Sendo que preciso fazer um Distinct para mostrar somente uma vez quando forem iguais os campos: Nota, CodInterno, CfopForn, CfopEntr e Fin;
E, ainda, fazer um Inner Join para pegar a descrição do Item.

O resultado seria esse:

Nota | CodForn | CodItemForn | Descrição | CodInterno | CfopForn | CfopEntr | Fin | Unitario
415 | 1 | 27185 | ProdutoA | 1010101 | 5102 | 1101 | 1.1 | 125,00
245 | 1 | 27185 | ProdutoA | 1010101 | 5102 | 1101 | 1.1 | 138,00
128 | 1 | 27185 | ProdutoA | 1010101 | 5102 | 1101 | 1.1 | 129,85


Se alguém puder me auxiliar nessa empreitada, agradeço muito. Estou tentanto aqui, mas por enquanto, sem sucesso.
Se conseguir algo, postarei.
JABA 20/07/2016 14:04:45
#464966
Resposta escolhida
Fiz aqui de cabeça e cheguei no seguinte resultado:

	Select  Lancamento.Nota, Lancamento.CodForn, Lancamento.CodItemForn, Produto.Descricao, Lancamento.CodInterno, Lancamento.CfoForn, Lancamento.CfopEntr, Lancamento.Fin, Lancamento.Unitario from Produto, Lancamento Where Produto.CodItemForn = Lancamento.CodItemForn Group By Lancamento.Nota 


Se os campos podem mudar de valor para uma mesma nota, então você vai ter que agrupar por outros campos também:

	Select  Lancamento.Nota, Lancamento.CodForn, Lancamento.CodItemForn, Produto.Descricao, Lancamento.CodInterno, Lancamento.CfoForn, Lancamento.CfopEntr, Lancamento.Fin, Lancamento.Unitario from Produto, Lancamento Where Produto.CodItemForn = Lancamento.CodItemForn Group By Lancamento.Nota, Lancamento.CodInterno, Lancamento.CfopForn, Lancamento.CfopEntrm, Lancamento.Fin 


OBS: Sua primeira tabela chamei de Produto e a outra chamei de Lancamento. Retirei também a acentuação do campo [Ô]Descrição[Ô].
PERCIFILHO 20/07/2016 15:05:45
#464972
Valeu Jaba, funcionou direitinho, apenas fiz algumas adaptações e deu certo. Muito obrigado.
Até mais.
Tópico encerrado , respostas não são mais permitidas