Ir para conteúdo
Fórum Script Brasil
  • 0

(Resolvido) Somando Valores de uma Consluta SQL


Anderson Gouveia

Pergunta

Pessoal, boa noite.

Tenho em uma tabel os campos "cliente", "valor" e "data", onde existem vários registros em datas diferents, com valores diferentes de mesmos cliente.

Preiso de uma consluta que me retorne a soma destes valores.

Ex:

Anderson R$50,00 21/11

Carlos R$20,00 21/11

Anderson R$30,00 23/11

A consulta deveria me retornar:

Anderson R$80,00

Carlos R$20,00.

Como posso fazer esta consulta?

Eu sei como fazer para somar todos os valores da coluna "valores"

$soma= 0;

$soma = $soma+$l[valores];

Só que preciso da soma de cada um dos clientes.

Desde já agradeços a ajuda.

Abraços

Link para o comentário
Compartilhar em outros sites

6 respostass a esta questão

Posts Recomendados

  • 0
SELECT *, COUNT(valor) total_contado FROM tabela GROUP BY cliente

o total_contado vai ter o valor de cada cliente...

ESerra, boa noite.

Meu caro, você sempre me auxiliou aqui no fórum, porém desta vez não funcionou não.

Fiz o código da seguinte forma:

require_once('conecta.php');

$consulta = "select *, count(valor) total_valor from teste group by cliente;

$resultado = mysql_query($consulta);

while ($l = mysql_fetch_assoc($resultado)) {

echo $l[total_valor];

}

Poderia me indicar onde estou errando?

Abraços!

Link para o comentário
Compartilhar em outros sites

  • 0
Esquece o que eu disse... somar é com SUM e não com COUNT...

select *, SUM(valor) as total_valor from teste group by cliente

Só lembrando que o campo tem que ser adequado para números...

Meu amigo, você não sabe o tamanho do "galho" que você quebrou, na verdade foi uma árvore inteira!!!!!

Ficou perfeito.

Abraços!!

Link para o comentário
Compartilhar em outros sites

  • 0

ESerra, boa noite.

Acho que me preciptei quando disse "Perfetio", na verdade ficou quase perfeito, pois me surgiu um novo impasse.

tenho outro campo nesta tabela PGTO que pode assumir os valores S ou N.

Preciso printar na tela o total do campo valor (já resolvido com sua ajuda) e também preciso printar o total campo valor, somente onde o campo pgto for S, porém precisaria fazer tudo isto no mesmo select (começou a complicar).

É possível?

Tentei o sum(valor) as total, sum(valor) where pgto ='s' as valor_pago mas não deu certo; no lugar do where tentei "on" mas também não rolou.

Abraços!

ESerra, boa noite.

Acho que me preciptei quando disse "Perfetio", na verdade ficou quase perfeito, pois me surgiu um novo impasse.

tenho outro campo nesta tabela PGTO que pode assumir os valores S ou N.

Preciso printar na tela o total do campo valor (já resolvido com sua ajuda) e também preciso printar o total campo valor, somente onde o campo pgto for S, porém precisaria fazer tudo isto no mesmo select (começou a complicar).

É possível?

Tentei o sum(valor) as total, sum(valor) where pgto ='s' as valor_pago mas não deu certo; no lugar do where tentei "on" mas também não rolou.

Abraços!

Opa, RESOLVIDO.

É só uasr o sum(case when pgto='s' then valor else 0 end) as valor_pago.

****Isso que dá ficar perguntando antes de usar o SEARCH***

Obrigado e desculpa pelo Post desnecessário.

Link para o comentário
Compartilhar em outros sites

  • 0

Como criar um campo com soma do valor_fat e custo_medio?

Desde já agradeço.

select

c.cd_atendimento atendimento,

d.nm_paciente paciente,

f.cd_produto,

b.cd_pro_fat procedimento,

e.ds_pro_fat ds_profat,

--b.dt_lancamento data,

sum(nvl(b.qt_lancamento,0)) qnt,

round(avg(nvl(b.vl_unitario,0)),2) valor_fat,

round(avg(nvl(g.vl_custo_medio * h.vl_fator,0)),2) custo_medio

from

reg_fat a,

itreg_fat b,

atendime c,

paciente d,

pro_fat e,

produto f,

(

select

cm.cd_produto,

cm.vl_custo_medio

from custo_medio cm

where cm.dh_custo_medio in (select max(a.dh_custo_medio) from dbamv.custo_medio a

where cm.cd_produto = a.cd_produto

)

)g,

(

select

cd_produto,

vl_fator,

seq

from (

select

un.cd_produto,

un.vl_fator,

row_number()

over ( partition by un.cd_produto order by cu.cd_ordem) seq

from

dbamv.uni_pro un,

dbamv.config_unidade cu

where un.tp_relatorios = cu.tp_unidade

and cu.cd_grupo = 1

)

where seq = 1

) h

where a.cd_reg_fat=b.cd_reg_fat

and c.cd_atendimento=a.cd_atendimento

and d.cd_paciente=c.cd_paciente

and e.cd_pro_fat=b.cd_pro_fat

and f.cd_produto=g.cd_produto

and f.cd_pro_fat=b.cd_pro_fat(+)

and f.cd_produto = h.cd_produto

---and f.sn_consignado = 'N'

--and c.cd_atendimento= '260617'

--and b.cd_pro_fat='08019208'

group by

c.cd_atendimento,

d.nm_paciente,

f.cd_produto,

b.cd_pro_fat,

e.ds_pro_fat

order by procedimento

Marcio Rodrigues

Coordenador de T.I

Hospital Pronto Cardio

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,5k
×
×
  • Criar Novo...