En algunas ocasiones sucede que se definen en las carreras títulos intermedios, antes de obtener el título final de la carrera.
Para la obtención de estos títulos intermedios, se necesita cumplir con la aprobación de una cierta cantidad de finales.
Este es el caso de un Instituto, cuyo título intermedio se obtiene con la aprobación de todos los finales de primero y segundo año, y
se necesita conocer los apellidos y nombres de los alumnos que sin ser egresados, (osea sin haber obtenido el título final), tienen
aprobados al menos todos los finales de primer y segundo año. Adicionalmente se necesitaba que fuesen los alumnos que hubieran aprobado
al menos un final en una determinada fecha de mesa de examen final.
Para resolver este planteo, vamos utilizar la ventana 'Consulta SQL' que dispone el sistema SAU
En esta ventana, en la propiedad 'Consulta SQL' vamos a pegar el código siguiente, el cual explicaremos a continuación:
Select f.[Apellido], f.[Nombres], f.[Tipo de documento], f.[Número de documento], Count(*) as [Cantidad de finales] From [Final de materia] as f, [Carrera de alumno] Where /* Unión 'Final de materia' - 'Carrera de alumno' (inicia) */ f.[Nombre de la universidad]=[Carrera de alumno].[Nombre de la universidad] AND f.[Nombre de la facultad]=[Carrera de alumno].[Nombre de la facultad] AND f.[Nombre de la carrera]=[Carrera de alumno].[Nombre de la carrera] AND f.[Plan año]=[Carrera de alumno].[Plan año] AND f.[Tipo de documento]=[Carrera de alumno].[Tipo de documento] AND f.[Número de documento]=[Carrera de alumno].[Número de documento] AND /* Unión 'Final de materia' - 'Carrera de alumno' (finaliza) */ /*Nos quedamos con los finales aprobados hasta el año de obtención del título intermedio (inicia) */ f.[Calificación]>=4 AND f.[Identificador de la materia]>=2009101 AND f.[Identificador de la materia]<=2009299 AND /*Nos quedamos con los finales aprobados hasta el año de obtención del título intermedio (finaliza) */ /* Se agregó la condición de que los alumnos listados hubieran rendido final en un determinado llamado (inicia) */ exists (Select Distinct [Número de documento] From [Final de materia] Where [Final de materia].[Número de documento] =f.[Número de documento] AND [Fecha y hora de final definitiva]>='1/12/2011' AND [Fecha y hora de final definitiva]<='31/12/2011' AND [Calificación]>=4) AND /* Se agregó la condición de que los alumnos listados hubieran rendido final en un determinado llamado (finaliza) */ /* Se pide que los alumnos listados esten en estado 'Alumno' o 'Alumno rindiente' (no se quieren egresados) (inicia) */ ([Carrera de alumno].[Estado]='Alumno' or [Carrera de alumno].[Estado]='Alumno rindiente') AND /* Se pide que los alumnos listados esten en estado 'Alumno' o 'Alumno rindiente' (no se quieren egresados) (finaliza) */ /* Se especifíca un 'Nombre de la carrera' y 'Plan año' (inicia)*/ [Carrera de alumno].[Nombre de la carrera]='TECNICATURA SUPERIOR EN RÉGIMEN ADUANERO 2009' AND [Carrera de alumno].[Plan año]=2009 /* Se especifíca un 'Nombre de la carrera' y 'Plan año' (finaliza)*/ Group By f.[Apellido], f.[Nombres], f.[Tipo de documento], f.[Número de documento] Order by [Cantidad de finales] DescExplicación de la 'Consulta SQL'

