Ver Mensaje Individual
  #1 (permalink)  
Antiguo 06/07/2009, 10:17
marcoskp
 
Fecha de Ingreso: agosto-2008
Ubicación: Argentina
Mensajes: 19
Antigüedad: 15 años, 9 meses
Puntos: 0
Como evitar Subquerys

Hola amigos que tal? estoy teniendo problemas de rendimiento en unas consultas en las cuales necesito eliminar subquerys dentro de querys y queria saber como solucionar este problema de rendimiento ya que he probado opciones pero no he encontrado la solucion. La cosa es asi tengo una tabla temporal donde guardo info de otras tablas y dentro del select otro select que hace una suma de otra tabla les dejo el select del insert a modo de ejemplo

SELECT @FechaAnt = (SELECT MAX(Fecha) FROM tablatemp1 WHERE datediff(day, Fecha, @Fecha)>0)


SELECT tablatemp1.CodCliente,
@Fecha,
tablatemp1.CodMoneda,
tablatemp1.Saldo +
isnull((select sum(tabla1.Neto)
from tabla1
inner join tabla2
on tabla1.CodTabla1 = tabla2.CodTabla1
where ((datediff(day, coalesce(Tabla2.FechaHasta, @Fecha), @Fecha)=0 and @bFechaHasta = 0) or (datediff(day, coalesce(tabla1.FechaDesde, @Fecha)=0 and @bFechaDesde = -1))
and tabla1.CodCliente = tablatemp1.CodCliente
and tabla1.EsAnulado = 0
and tabla2.CodMoneda = tablatemp1.CodMoneda),0)
FROM tablatemp1
WHERE datediff(day, tablatemp1.Fecha, @FechaAnt) = 0