Ver Mensaje Individual
  #1 (permalink)  
Antiguo 17/10/2006, 10:10
odunacam
 
Fecha de Ingreso: octubre-2006
Mensajes: 7
Antigüedad: 18 años, 4 meses
Puntos: 0
Consulta Lenta

Hola Estoy Haciendo una Consulta entre 4 Tablas y Esta Consulta tarda entre 30 y 60 segundos, y se me hace demasiado para la cantidad de registro que arroja que es de 45, es decir el numero de registros es lo correcto pero el tiempo se me hace demasiado

Uso Interbase Firebird 1.5 La Imagen de las Relaciones entre las Tablas es la Siguiente

mx.geocities.com/odugudo/

¿Como la Puedo Optimizar?

El Codigo es el Siguiente:

SELECT TBL_ALUMNO.N_LISTA, TBL_ALUMNO.RFC, TBL_ALUMNO.NOMBRE_ALU, TBL_ALUMNO.TURNO,
TBL_ALUMNO.GRADO, TBL_ALUMNO.GRUPO, TBL_CALIFICACION1.PERIODO, TBL_CALIFICACION1.A01,
TBL_INASISTENCIA1.A01, TBL_CONDUCTA1.A01, TBL_CALIFICACION1.A02, TBL_INASISTENCIA1.A02,
TBL_CONDUCTA1.A02, TBL_CALIFICACION1.A03, TBL_INASISTENCIA1.A03, TBL_CONDUCTA1.A03,
TBL_CALIFICACION1.A04, TBL_INASISTENCIA1.A04, TBL_CONDUCTA1.A04, TBL_CALIFICACION1.A05, TBL_INASISTENCIA1.A05,
TBL_CONDUCTA1.A05, TBL_CALIFICACION1.A06, TBL_INASISTENCIA1.A06, TBL_CONDUCTA1.A06, TBL_CALIFICACION1.A07,
TBL_INASISTENCIA1.A07, TBL_CONDUCTA1.A07, TBL_CALIFICACION1.A08, TBL_INASISTENCIA1.A08, TBL_CONDUCTA1.A08,
TBL_CALIFICACION1.A09, TBL_INASISTENCIA1.A09, TBL_CONDUCTA1.A09, TBL_CALIFICACION1.A10, TBL_INASISTENCIA1.A10,
TBL_CONDUCTA1.A10, TBL_CALIFICACION1.A11, TBL_INASISTENCIA1.A11, TBL_CONDUCTA1.A11, TBL_CALIFICACION1.A12,
TBL_INASISTENCIA1.A12, TBL_CONDUCTA1.A12, TBL_CALIFICACION1.A13, TBL_INASISTENCIA1.A13, TBL_CONDUCTA1.A13,
TBL_CALIFICACION1.A14, TBL_INASISTENCIA1.A14, TBL_CONDUCTA1.A14
FROM TBL_CONDUCTA1 INNER JOIN (TBL_INASISTENCIA1 INNER JOIN (TBL_ALUMNO INNER JOIN TBL_CALIFICACION1 ON
(TBL_ALUMNO.RFC = TBL_CALIFICACION1.RFC) AND (TBL_ALUMNO.GRADO = TBL_CALIFICACION1.GRADO)) ON
(TBL_INASISTENCIA1.PERIODO = TBL_CALIFICACION1.PERIODO) AND (TBL_INASISTENCIA1.GRADO = TBL_CALIFICACION1.GRADO) AND
(TBL_INASISTENCIA1.RFC = TBL_CALIFICACION1.RFC)) ON (TBL_CONDUCTA1.PERIODO = TBL_INASISTENCIA1.PERIODO) AND
(TBL_CONDUCTA1.GRADO = TBL_INASISTENCIA1.GRADO) AND (TBL_CONDUCTA1.RFC = TBL_INASISTENCIA1.RFC)
WHERE (((TBL_ALUMNO.TURNO)=1) AND ((TBL_ALUMNO.GRADO)=1) AND ((TBL_ALUMNO.GRUPO)='C') AND
((TBL_CALIFICACION1.PERIODO)=0)) ORDER BY TBL_ALUMNO.N_LISTA