Somar campos e organizar Totais

24/01/2006

0

Pessoal

tenho uma tabela com os seguintes dados:

[b:43b80f751a]quant_______custo_______descricao_______fornecedor[/b:43b80f751a]
20__________2,00__________escova________joao
10__________1,50__________lápis__________maria
30__________2,00__________escova________joao
40__________2,50__________caderno_______maria
20__________3,40__________folhas_________maria

Preciso fazer um relatório que apareça da seguinte forma:


PEDIDO

[b:43b80f751a]Fornecedor: Joao[/b:43b80f751a]
[color=#CC0000:43b80f751a]Qtde________descricao________custo unit.______total[/color:43b80f751a]
50__________escova__________2,00__________100,00
[b:43b80f751a]Total de Joao: 100,00[/b:43b80f751a]


[b:43b80f751a]Fornecedor: Maria[/b:43b80f751a]
[color=CC0000:43b80f751a]Qtde________descricao________custo unit.______total[/color:43b80f751a]
10__________lapis__________1,50__________15,00
40__________caderno_______2,50_________100,00
20__________folhas_________3,40__________68,00
[b:43b80f751a]Total de Maria: 183,00[/b:43b80f751a]


Veja que foi juntado os produtos com o mesmo nome (escova) e os custos foram multiplicados pela quantidade correspondente.

Como que é a instrução SQL para calcular tudo isso?

Estou precisando muito, se alguém conseguir ajudar, agradeço.

Vinicius


Ravazio

Ravazio

Responder

Posts

24/01/2006

Emerson Nascimento

veja se assim funciona:
select
  fornecedor,
  sum(quant) quantidade,
  descricao,
  avg(custo) custo_medio,
  sum(quant * custo) total
from
  pedido
where
   {...}
group by
  fornecedor,
  descricao



Responder

25/01/2006

Ravazio

Obrigado Emerson!

já tive algum resultato positivo.

Acho que dará certo.

[]´s
Vinicius


Responder

Que tal ter acesso a um e-book gratuito que vai te ajudar muito nesse momento decisivo?

Ver ebook

Recomendado pra quem ainda não iniciou o estudos.

Eu quero
Ver ebook

Recomendado para quem está passando por dificuldades nessa etapa inicial

Eu quero

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

Aceitar