Ver Mensaje Individual
  #9  
Antiguo 10-06-2008
celades1 celades1 is offline
Miembro
 
Registrado: ago 2005
Posts: 116
Reputación: 19
celades1 Va por buen camino
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
Responder Con Cita