Ver Mensaje Individual
  #2  
Antiguo 06-02-2013
Avatar de olbeup
olbeup olbeup is offline
Miembro
 
Registrado: jul 2005
Ubicación: Santiago de la Ribera (España)
Posts: 685
Reputación: 19
olbeup Va camino a la fama
Cita:
Empezado por mordaz Ver Mensaje
Que tal a todos,

Hice una consulta en SQL que con pocos registros funcionaba muy bien pero ahora se tarda hasta 30 minutos en procesar. Utilizo Interbase 6.5 y el programa esta hecho en C++ Builder 6. Si alguien me puede ayudar a optimizar la consulta se los agradecería. La consulta es la siguiente:

La base de datos al dia de hoy mide unos 50 Mb

SELECT Codigo,Precio,Cantidad
FROM Ventas_Conceptos
WHERE Venta_key IN (
SELECT Venta_key
FROM Ventas
WHERE Corte=50
AND Cancelada IS NULL)

Es una consulta sencilla salvo el hecho de que tiene un IN y una subconsulta.
Hola mordaz,

Bienvenido al Club Delphi, te has dado un garbeo por la Guía de estilo

El problema de tu SQL puede estar en los Indices, no veo nada fuera de lo normal.

Los indices de Venta_key de ambas base de datos están creados?, quizás puede ser el problema de la lentitud o que la base de datos esta corructa.

Un saludo.
__________________
Al hacer una consulta SQL, haz que los demás te entiendan y disfruten de ella, será tú reflejo de tú saber.
Responder Con Cita