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