PUERTA | PUERTA CS 2010 | Pregunta 19

A continuación se proporciona un esquema relacional para una base de datos de reservas de trenes.
Pasajero (pid, nombre, edad)
Reserva (pid, clase, tid)

Table: Passenger
pid   pname   age
-----------------
 0    Sachin   65
 1    Rahul    66
 2    Sourav   67
 3    Anil     69

Table : Reservation
pid  class  tid
---------------
 0    AC   8200
 1    AC   8201
 2    SC   8201
 5    AC   8203
 1    SC   8204
 3    AC   8202

¿Qué pid devuelve la siguiente consulta SQL para la instancia anterior de las tablas?

SELECT pid
FROM Reservation ,
WHERE class ‘AC’ AND
    EXISTS (SELECT *
       FROM Passenger
       WHERE age > 65 AND
       Passenger. pid = Reservation.pid)

(A) 1, 0
(B) 1, 2
(C) 1, 3
(D) 1, 5

Respuesta: (C)
Explicación: cuando una subconsulta utiliza valores de una consulta externa, la subconsulta se denomina subconsulta correlacionada. La subconsulta correlacionada se evalúa una vez por cada fila procesada por la consulta externa.

La consulta externa selecciona 4 entradas (con pids como 0, 1, 5, 3) de la tabla de reservas. De estas entradas seleccionadas, la subconsulta devuelve valores no nulos solo para 1 y 3.
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 *