Fórum Sql acumular #331950

24/10/2006

0

Bom dia a Todos,

Estou tentando acumular os valores pelo cliente:
SQL:
select FIRST 10 id_cliente_frs, CL1.Nome_cli, coalesce (sum(VALOR_NOTA_FRS), 0) as Tot_FRETE from ftfatres left join clientes CL1 ON ID_cliente_FRS = CODIGO_cli where (DATA_EMIS_FRS between :Dt_ini and :Dt_fim) and (ID_EMPRESA_FRS = :Cod_emp) AND tipo_cliente2_frs <> ´R´ group by CL1.Nome_CLI, id_cliente_frs Having coalesce (sum(VALOR_NOTA_FRS), 0) <> 0 union ALL
select FIRST 10 id_cliente2_frs, CL2.Nome_cli, coalesce (sum(VALOR_NOTA_FRS), 0) as Tot_FRETE from ftfatres left join clientes CL2 ON ID_cliente2_FRS = CODIGO_cli where (DATA_EMIS_FRS between :Dt_ini and :Dt_fim) and (ID_EMPRESA_FRS = :Cod_emp) AND tipo_cliente2_frs = ´R´ group by CL2.Nome_CLI, id_cliente2_frs Having coalesce (sum(VALOR_NOTA_FRS), 0) <> 0 order by 3 DESC

Resultado:

800 Cliente 01 100.000,00
801 Cliente 02 50.000,00
802 Cliente 03 20.000,00
800 Cliente 01 10.000,00
801 Cliente 02 20.000,00

Eu gostaria de acumular pelo cliente, estou usando Delphi 7, firebird 1.5 e dbexpress. Obrigado, Evaldo.


Emrinfo

Emrinfo

Responder

Posts

24/10/2006

Steve_narancic

adicione um [b:795dd2ac34]group by[/b:795dd2ac34] no seu comando SQL


Responder

Gostei + 0

24/10/2006

Emrinfo

Prezado, steve_narancic.

Já possui Group By. Na verdade eu estou acumulando dois selects e tentando fazer a uniao para ficar num só. Evaldo.


Responder

Gostei + 0

27/10/2006

Emrinfo

Já foi resolvido. Evaldo.


Responder

Gostei + 0

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

Aceitar