Criar Select
Ola caro programadores,
Estou precisando criar um select e não estou conseguindo,
E o seguinte tem uma tabela de vendas e outra de duplicatas onde faço a ligação uma com a outra através do numero da venda. Até ai tudo bem a duplicata e gerando na venda.
Só que cada duplicata tem uma forma de pagamento (dinheiro, cheque etc, esta forma de pagamento e cadastrada pelo usuário). Listar a venda e suas duplicatas consegui sem problema, o problema é que o cliente quer que o relatório totalize no final pela forma de pagamento das duplicatas e não estou conseguindo.
Exemplo:
Cliente: Marcos Nº Pedido 10 Valor pedido R$ 100,00
Duplicata 10.12 valor dup 50,00 forma pág dinheiro
Duplicata 10.22 valor dup 50,00 forma pág cheque
Cliente: Pedro Nº Pedido 11 Valor pedido R$ 100,00
Duplicata 11.12 valor dup 50,00 forma pág dinheiro
Duplicata 11.22 valor dup 50,00 forma pág cheque
Total Pedido: 200,00
Total Dinheiro: 100,00
Total Cheque: 100,00
Se alguém puder me ajudar agradeço
Estou precisando criar um select e não estou conseguindo,
E o seguinte tem uma tabela de vendas e outra de duplicatas onde faço a ligação uma com a outra através do numero da venda. Até ai tudo bem a duplicata e gerando na venda.
Só que cada duplicata tem uma forma de pagamento (dinheiro, cheque etc, esta forma de pagamento e cadastrada pelo usuário). Listar a venda e suas duplicatas consegui sem problema, o problema é que o cliente quer que o relatório totalize no final pela forma de pagamento das duplicatas e não estou conseguindo.
Exemplo:
Cliente: Marcos Nº Pedido 10 Valor pedido R$ 100,00
Duplicata 10.12 valor dup 50,00 forma pág dinheiro
Duplicata 10.22 valor dup 50,00 forma pág cheque
Cliente: Pedro Nº Pedido 11 Valor pedido R$ 100,00
Duplicata 11.12 valor dup 50,00 forma pág dinheiro
Duplicata 11.22 valor dup 50,00 forma pág cheque
Total Pedido: 200,00
Total Dinheiro: 100,00
Total Cheque: 100,00
Se alguém puder me ajudar agradeço
Hugofab
Curtidas 0
Respostas
Aroldo Zanela
29/10/2004
Colega,
Se não conseguir com o exemplo que segue, coloque a estrutura das tabelas para que possamos elaborar um exemplo mais pragmático:
Se não conseguir com o exemplo que segue, coloque a estrutura das tabelas para que possamos elaborar um exemplo mais pragmático:
SELECT dup.forma, sum(valor) total FROM tbl_vendas vda INNER JOIN tbl_duplicatas dup ON (vda.chave = dup.chave) GROUP BY dup.forma
GOSTEI 0
Hugofab
29/10/2004
Aroldo,
O Select que você passou funcionou, consegui fazer o agrupamento correto. O problema agora é que como vou fazer para filtrar as vendas pela data?
Tenho um campo date na tabela, mas não sei como implementar o where com o select desta forma.
Obrigado pela ajuda!
O Select que você passou funcionou, consegui fazer o agrupamento correto. O problema agora é que como vou fazer para filtrar as vendas pela data?
Tenho um campo date na tabela, mas não sei como implementar o where com o select desta forma.
Obrigado pela ajuda!
GOSTEI 0
Hugofab
29/10/2004
Aroldo,
Fazendo alguns testes aqui consegui filtrar pela data, no lugar de usar a condição where como estava acostumando, coloquei a condição no ON ai deu certo.
Só me explica uma coisa qual a função daquelas ,from vendas =>vda, INNER JOIN duplicata =>dup ?
Muito obrigado !
Hugo Fabrício. hugo_fabricio@hotmail.com
Fazendo alguns testes aqui consegui filtrar pela data, no lugar de usar a condição where como estava acostumando, coloquei a condição no ON ai deu certo.
Só me explica uma coisa qual a função daquelas ,from vendas =>vda, INNER JOIN duplicata =>dup ?
Muito obrigado !
Hugo Fabrício. hugo_fabricio@hotmail.com
GOSTEI 0
Rafs
29/10/2004
A função de ´vda´ e ´dup´ é para dar nome às tabelas.
É extremamente necessário quando se possui campos com mesmo nome em tabelas diferentes.
É extremamente necessário quando se possui campos com mesmo nome em tabelas diferentes.
GOSTEI 0
Aroldo Zanela
29/10/2004
Colega,
Conforme foi comentado pelo colega, são alias utilizados para evitar problemas com ambiguidades nas tabelas.
Conforme foi comentado pelo colega, são alias utilizados para evitar problemas com ambiguidades nas tabelas.
GOSTEI 0
Hugofab
29/10/2004
Colegas,
Obrigado por sanarem todas as minhas duvida, sempre que puder vou ajudar a comunidade.
Agradeço pela atenção,
Hugo Fabrício
Obrigado por sanarem todas as minhas duvida, sempre que puder vou ajudar a comunidade.
Agradeço pela atenção,
Hugo Fabrício
GOSTEI 0