Hola
No tengo claro las tablas pero no veo la necesidad de poner los id en los dos group by
Código SQL
[-]
Select Dep.Id, coalesce(SumLitLLe,0) SumLitLle, coalesce(SumLitRep,0) SumLitRep, coalesce(SumLitLLe,0) - coalesce(SumLitRep,0) LitDif From Depositos Dep left Join (Select Sum(Lit) SumLitLLe,iddep From LLEnado lle Where Fec <= :Fecha group by 2) LLEnado On Dep.Id = LLEnado.Iddep Left Join (Select Sum(rep.Lit) SumLitRep,sur.iddep From Repostaje Rep inner join Surtidor sur on rep.idsur = sur.id where Fec <= :Fecha group by 2) Sur On sur.iddep = dep.id Where Dep.cod = :cod
Otra Solucion diferente podria ser
Código SQL
[-]
Select Dep.Id,(Select Sum(Lit) From LLEnado lle Where Dep.Id = LLE.Iddep and lle.Fec <= :Fecha ) SumLitLLe , (Select Sum(rep.Lit) From Repostaje Rep inner join Surtidor sur on rep.idsur = sur.id where sur.iddep = dep.id AND Fec <= :Fecha) SumLitRep, (Select Sum(Lit) From LLEnado lle Where Dep.Id = LLE.Iddep and lle.Fec <= :Fecha )- (Select Sum(rep.Lit) From Repostaje Rep inner join Surtidor sur on rep.idsur = sur.id where sur.iddep = dep.id AND Fec <= :Fecha) LitDif From Depositos Dep
Saludos