Sql acumular

Delphi

24/10/2006

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

Curtidas 0

Respostas

Steve_narancic

Steve_narancic

24/10/2006

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


GOSTEI 0
Emrinfo

Emrinfo

24/10/2006

Prezado, steve_narancic.

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


GOSTEI 0
Emrinfo

Emrinfo

24/10/2006

Já foi resolvido. Evaldo.


GOSTEI 0
POSTAR