Documentos de Académico
Documentos de Profesional
Documentos de Cultura
EXAMEN FINAL
2023-2
Sección: CC41 / CC42 / CC43 / CC44 / CC46 / CC47 / CC48 / CC49 / SI35 / SV42 / SV43 / SV44
WS41 / WS42 / WS43 / WS44 / WS46 / WX41 / WX42 / WX43 / WX44 / WX45
Indicaciones:
1. El examen consta de diez (10) preguntas, y tendrá 175 minutos para resolverlas.
2. El enunciado de la pregunta se encuentra en el archivo
upc-pre-202302-si400-examen-final.pdf
3. La solución deberá adjuntarse en un documento Word con la siguiente nomenclatura:
upc-pre-202302-si400-examen-final-codigoalumno.docx
4. Cada examen cuenta con un equipo académico, el cual estará conectado durante los primeros 15
minutos del examen.
5. El alumno debe dedicar los primeros 15 minutos a revisar las preguntas del examen y de presentarse
alguna duda enviar un correo al(los) profesor(es)
6. El asunto del correo debe incluir el código de la sección a la cual pertenece el alumno.
7. Los profesores en mención solo recibirán correos provenientes de las cuentas UPC, de ninguna
manera se recibirán correos de cuentas públicas.
8. Tener en cuenta que, ya terminado el estado de emergencia, no hay la posibilidad de tomar
exámenes adicionales y, un alumno que pierde el examen por problemas técnicos deberá
realizar el proceso de recuperación formal.
Consideraciones:
1. Está permitido el uso o consulta de cuadernos, separatas, libros o cualquier material de la asignatura
durante el desarrollo de la evaluación.
2. La evaluación es personal, queda totalmente prohibido realizar consultas a compañeros.
3. Las sentencias SQL deben utilizar la sintaxis de SQL Server. El incumplimiento de este punto
anulará completamente la pregunta en la cual se haya detectado el uso de una sintaxis distinta
a la de SQL Server.
4. No está permitido el uso de herramientas de IA generativa como ChatGPT. El incumplimiento de este
punto anulará completamente la pregunta en la cual se haya detectado el uso.
5. No están permitidas las consultas que incluyan las siguientes sentencias:
• select top
• limit
• rollup, cube, grouping sets
• coalesce
• rank()
• over()
• row_number()
• partition by order by
6. Cualquier intento de plagio o incumplimiento de las normas, anulará completamente el examen.
Caso 1: Airbnb
Airbnb es una plataforma en línea que permite a las personas alquilar alojamientos a corto plazo. El sistema
mantiene información sobre usuarios, alojamientos, reservas, comentarios y más, como se muestra en la
Figura 1.
La plataforma permite que los usuarios puedan realizar reservas de alojamiento. Cada reserva incluye el
alojamiento, la fecha de inicio, la fecha de fin y la fecha de la reserva.
Un alojamiento le pertenece solo a un usuario que es considerado como anfitrión. Los datos que se deben
registrar por cada alojamiento son el precio por día, la lista de servicios, la ciudad y el país.
Una vez concluida la reserva, los usuarios puede dejar una reseña al alojamiento y una reseña al anfitrión.
Pregunta 1 (6 p.)
Diseña el modelo físico de datos para la plataforma de Airbnb, identificando las principales tablas y sus
respectivas columnas, las relaciones entre las tablas, las llaves primarias y llaves secundarias.
Nota:
• El modelo físico de base de datos puede ser realizado mediante la herramienta de su preferencia.
Caso 2: Carreras universitarias
estudiantes
codigo apellido_paterno apellido_materno codigo_carrera
202307401 Pacheco Juan ca001
202307402 Pacheco Martín ca002
202307403 Paredes Carla ca001
202307404 Paredes Marcos ca001
202307405 Paredes Ricardo ca002
202307406 Paredes Sara ca002
202307407 Ramos Carlos ca001
carreras
codigo nombre
ca001 Ciencias de la Computación
ca002 Ingeniería de Software
Pregunta 2 (1 p.)
Escriba la sentencia SQL que retorne el siguiente resultado:
nombre carrera
Paredes, Carla Ciencias de la Computación
Paredes, Marcos Ciencias de la Computación
Pregunta 3 (1 p.)
Escriba la sentencia SQL que retorne el siguiente resultado:
carrera cantidad
Ciencias de la Computación 4
Ingeniería de Software 3
Caso 3: Adopción de mascotas
Pregunta 4 (2 p.)
Escriba la sentencia SQL para mostrar los tipos de animales que fueron más adoptados durante un
determinado año (ingresado como parámetro). Debe mostrar el nombre del tipo de animal y la cantidad de
adopciones.
Pregunta 5 (2 p.)
Escriba la sentencia SQL para mostrar el nombre de la persona que ha adoptado a todos los tipos de
animales.
Pregunta 6 (2 p.)
Escriba la sentencia SQL para mostrar los tipos de animales que fueron más adoptados por cada año. Debe
mostrar el nombre del tipo de animal, la cantidad de adoptaciones y el año.
Caso 4: Parkeasy
Se desea crear una base de datos para un sistema de estacionamientos llamado ParkEasy. El sistema permite
a los usuarios buscar estacionamientos disponibles, reservas espacios y mantener un registro de sus
actividades.
Pregunta 7 (2 p.).
Establecer una regla de validación utilizando JSON Schema para la colección de documento que represente
una reserva de espacio de estacionamiento.
Pregunta 8 (2 p.).
Indicar los patrones de modelado de datos utilizados para el documento que representa una reserva de
espacio de estacionamiento.
Caso 5: Restaurantes
Pregunta 9 (1 p.)
Escribir una consulta que permita mostrar la cantidad de restaurantes por cada ciudad.
Pregunta 10 (1 p.)
Escribir una consulta que permita mostrar la cantidad de restaurantes por cada ciudad que sirvan el tipo de
comida Bakery.
Rúbrica de calificación