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
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
Curtir tópico
+ 0
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.
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
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:
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
Clique aqui para fazer login e interagir na Comunidade :)