Fórum Filtrar Produtos de clientes #471363

26/02/2014

0

Estou com a seguinte situação:
Preciso gerar um relatório que pegue todos os produtos que o cliente já comprou e me liste, por exemplo:

Cliente A, Telefone, Contato
Produto 1
Produto 2
Produto 3
Produto 4

Cliente B, Telefone, Contato
Produto 50
Produto 130
Produto 325
Produto 300

Fiz esse comanda mas não está dando certo

SELECT
VENDAS.NOTA,
CLIENTES.NOME,
CLIENTES.TELEFONE,
CLI_ADICIONAIS.EMAIL,
CLIENTES.CONTATO,
ESTOQUE.NOME
FROM VENDAS
INNER JOIN CLIENTES ON VENDAS.CLIENTE = CLIENTES.CODIGO
INNER JOIN CLI_ADICIONAIS ON CLIENTES.CODIGO = CLI_ADICIONAIS.CODIGO
INNER JOIN ITEVENDAS ON VENDAS.NOTA = ITEVENDAS.NOTA
INNER JOIN ESTOQUE ON ITEVENDAS.CODIGO = ESTOQUE.CODIGO

ORDER BY NOTA


Se puderem me ajudar agradeço
David Sobral

David Sobral

Responder

Posts

26/02/2014

Alex Lekao

Ola David, boa tarde!!!

experimente colocar um group by e listar os campos que estao no select para ver se da o resultado que vc deseja.

deve ser colocado antes do order by.

ficaria mais ou menos assim.

SELECT
   VENDAS.NOTA,
   CLIENTES.NOME,
   CLIENTES.TELEFONE,
   CLI_ADICIONAIS.EMAIL,
   CLIENTES.CONTATO,
   ESTOQUE.NOME
FROM VENDAS
INNER JOIN CLIENTES ON VENDAS.CLIENTE = CLIENTES.CODIGO
INNER JOIN CLI_ADICIONAIS ON CLIENTES.CODIGO = CLI_ADICIONAIS.CODIGO
INNER JOIN ITEVENDAS ON VENDAS.NOTA = ITEVENDAS.NOTA
INNER JOIN ESTOQUE ON ITEVENDAS.CODIGO = ESTOQUE.CODIGO
GROUP BY CLINTES.NOME,CLIENTES.TELEFONE,CLIENTES.CONTATO,CLI_ADICIONAL.EMAIL,VENDAS.NOTA,ESTOQUE.NOME
ORDER BY NOTA


tentei dar uma ajustada pensando em coerencia com os campos que listou.

testa ai por favor e poste o resultado, se deu certo e tal.

Abraco.

Alex - Lekao
Responder

Gostei + 0

08/05/2014

Emerson Nascimento

não faz sentido exibir nota, data de venda, coisas do tipo.

geralmente isso é para análise e os dados devem ser sintetizados.

algo assim:

SELECT
 C.NOME,
 C.TELEFONE,
 C.CONTATO,
 IV.PRODUTO,
 SUM(IV.QUANTIDADE) QTDVEN,
 SUM(IV.QUANTIDADE * IV.PRECO) VLRVEN
FROM VENDAS V
INNER JOIN CLIENTES C ON C.CODIGO = V.CLIENTE
INNER JOIN ITEVENDAS IV ON IV.NOTA = V.NOTA
GROUP BY
 C.NOME,
 C.TELEFONE,
 C.CONTATO,
 IV.PRODUTO,
ORDER BY
 C.NOME,
 C.TELEFONE,
 C.CONTATO,
 IV.PRODUTO
Responder

Gostei + 0

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

Aceitar