PUERTA | Sudo GATE 2020 Mock II (10 de enero de 2019) | Pregunta 19

Considere el siguiente esquema relacional:

STUDENT(SNO, SNAME, DEPT)
ENROLL(CNO, SNO, GRADE)
COURSE(CNO, DEPT)
PREREQ(CNO, PNO) 

Las claves están subrayadas. La columna INSCRIBIRSE(SNO) es una clave externa que hace referencia a ESTUDIANTE(SNO). Todas las apariciones de las columnas CNO y PNO, excepto la de CURSO, son claves foráneas que hacen referencia a CURSO(CNO).

SELECT E1.CNO, S.SNAME
FROM ENROLL E1, STUDENT S
WHERE E1.SNO = S.SNO
      AND NOT EXISTS ( SELECT * FROM ENROLL E2
                       WHERE E2.CNO = E1.CNO
                            AND E2.GRADE > E1.GRADE )

¿Cuál es el resultado de la consulta?
(A) Para cada curso, devuelva los nombres de los estudiantes con la puntuación más alta.
(B) Para cada estudiante, devuelva los nombres de los cursos.
(C) Para cada curso, devuelva los nombres de los estudiantes que nunca obtuvieron las calificaciones más altas.
(D) Ninguno de estos.

Respuesta: (A)
Explicación: Dada la consulta SQL,

SELECT E1.CNO, S.SNAME
FROM ENROLL E1, STUDENT S
WHERE E1.SNO = S.SNO
      AND NOT EXISTS ( SELECT * FROM ENROLL E2
                       WHERE E2.CNO = E1.CNO
                            AND E2.GRADE > E1.GRADE )

Devuelve los nombres de los estudiantes con la puntuación más alta, para cada curso.

La opción (A) es correcta.

Cuestionario de esta pregunta

Publicación traducida automáticamente

Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *