Ver Mensaje Individual
  #1  
Antiguo 04-03-2009
mjjj mjjj is offline
Miembro
 
Registrado: mar 2007
Posts: 652
Reputación: 18
mjjj Va por buen camino
Rapidez en consulta

Hola amigos, estoi teniendo hartos problemas con las consultas SQL, se estan demorando demasiado.

Espongo el codigo que utilizo, a ver si me pueden ayudar.

Código SQL [-]
select DISTINCT E.AREA, SUM(IIF(P.ESTADO ='A',1,0)),
SUM(IIF(P.ESTADO ='P',1,0)) from ESTRUCTURA E LEFT JOIN COMPRAS P
ON E.EMPRESA =P.EMPRESA AND E.AREA = P.AREA AND E.SUBAREA = P.SUBAREA
WHERE E.empresa = 'emp1'
GROUP BY E.AREA

La tabla Estructura, como su nombre lo dice, contiene la estructura de mi centro de costo, la tabla compras estan alojadas las compras, en donde el campo "estado", hace referencia a lo que necesito consultar.

Esta consulta esta demorando unos 10 segundos mas o menos, el asunto es que si cambio el LEFT JOIN, po INNER JOIN, anda de maravilla, instantaneo, pero solo me arroja las area de la tabla estructura y que ademas cohincida que tiene algun registro con el campo area.

Bueno lo que acabo de escribir es que realmente hace la funcion INNER JOIN, pero la que me interesa a mi es LEFT JOIN.

Alguien tiene alguna otra idea de como hace esta consulta de otra manera, y que vaya mas rapido.

Gracias
Responder Con Cita