Ejercicios TI3V12
Fundamentos de Bases de Datos
1 GitHub 01
1.1 Ejercicio 01
Consulta Básica: Mostrar todos los libros de la tabla “Libros”.
1.2 Ejercicio 02
Consulta con Filtro: Mostrar el nombre y nacionalidad del autor del libro con ID 2.
1.3 Ejercicio 03
Consulta con JOIN: Mostrar el título del libro y el nombre del autor de todos los libros.
1.4 Ejercicio 04
Actualización de Datos: Cambiar la nacionalidad del autor con ID 3 a “Argentino - Francés”.
1.5 Ejercicio 05
Inserción de Datos: Agregar un nuevo autor a la tabla “Autores” con ID 4, nombre “Isabel Allende” y nacionalidad “Chilena”.
1.6 Ejercicio 06
Eliminación de Datos: Eliminar el libro con ID 1 de la tabla “Libros”.
1.7 Ejercicio 07
Crear un nuevo libro: Inserta un nuevo registro en la tabla “Libros” con los siguientes datos:
- ID: 4
- Título: “El amor en los tiempos del cólera”
- Autor_ID: 1
1.8 Ejercicio 08
Actualizar un libro: Actualiza el título del libro con ID 2 a “Conversación en la catedral”.
1.9 Ejercicio 09
Eliminar un autor: Elimina el autor con ID 3 de la tabla “Autores” y todos los libros asociados a este autor.
1.10 Ejercicio 10
Leer todos los libros de un autor: Muestra todos los libros escritos por el autor con ID 1.
1.11 Ejercicio 11
Actualizar la nacionalidad de un autor: Cambia la nacionalidad del autor con ID 2 a “Peruana”.
2 Github 02
Usando el script de “script_clase 01.sql”
2.1 Ejercicio 01
Consulta de Productos por Categoría: Muestra todos los productos de la categoría “Electrónica”.
2.2 Ejercicio 02
Consulta de Pedidos de un Cliente: Muestra todos los pedidos realizados por el cliente con ID 1.
2.3 Ejercicio 03
Actualización de Stock: Reduce el stock del producto con ID 3 en 5 unidades.
2.4 Ejercicio 04
Inserción de Cliente: Agrega un nuevo cliente a la tabla “Clientes” con los siguientes datos:
- Nombre: “Ana López”
- Email: “ana@email.com”
- Dirección: “Calle 123, Ciudad”
2.5 Ejercicio 05
Eliminación de Pedido: Elimina el pedido con ID 2 de la tabla “Pedidos”.
2.6 Ejercicio 06
Consulta de Productos por Precio: Muestra todos los productos con un precio superior a $100.
2.7 Ejercicio 07
Consulta de Clientes por Ciudad: Muestra todos los clientes que viven en la ciudad de “Barcelona”.
2.8 Ejercicio 08
Actualización de Precio: Incrementa el precio del producto con ID 4 en un 10%.
2.9 Ejercicio 09
Inserción de Pedido: Agrega un nuevo pedido a la tabla “Pedidos” con los siguientes datos:
- Cliente_ID: 3
- Producto_ID: 2
- Cantidad: 2
- Fecha_Pedido: (fecha actual)
2.10 Ejercicio 10
Eliminación de Cliente: Elimina el cliente con ID 2 de la tabla “Clientes”.
3 Github 03
Base de Datos: TiendaOnlineV2 Para esta clase, utilizaremos la base de datos TiendaOnlineV2, la cual incluye las siguientes tablas y relaciones:
3.1 Ejercicio 01
Consulta de Ventas por Cliente: Muestra todas las ventas realizadas por el cliente con ID 1.
3.2 Ejercicio 02
Consulta de Detalles de una Venta: Muestra todos los detalles de la venta con ID 1.
3.3 Ejercicio 03
Actualización de Stock de Producto: Actualiza el stock del producto con ID 3, restando 5 unidades.
3.4 Ejercicio 04
Inserción de un Nuevo Producto: Agrega un nuevo producto a la tabla “Producto” con los siguientes datos:
- Nombre: “Nuevo Producto”
- Precio: 99.99
- Stock: 50
3.5 Ejercicio 05
Eliminación de una Venta: Elimina la venta con ID 2 de la tabla “Venta”.
3.6 Ejercicio 06
Consulta de Productos Más Vendidos: Muestra los productos más vendidos, ordenados por cantidad vendida.
3.7 Ejercicio 07
Consulta de Ventas por Fecha: Muestra todas las ventas realizadas en un rango de fechas específico.
3.8 Ejercicio 08
Actualización de Precios: Incrementa el precio de todos los productos en un 10%.
3.9 Ejercicio 09
Inserción de una Venta Completa: Agrega una nueva venta, incluyendo detalles de venta, para un cliente existente.
4 Github 04
Base de Datos: BibliotecaV3 Para esta clase, trabajaremos con la base de datos BibliotecaV3, la cual incluye las siguientes tablas y relaciones
4.1 Ejercicio 01
Consulta de Préstamos por Cliente: Muestra todos los préstamos realizados por el cliente con ID 2.
4.2 Ejercicio 02
Consulta de Libros Prestados: Muestra todos los libros que actualmente están prestados y no han sido devueltos (FechaDevolucion es NULL).
4.3 Ejercicio 03
Actualización de Stock de Libro: Actualiza el stock del libro con ID 4, sumando 2 unidades más.
4.4 Ejercicio 04
Inserción de un Nuevo Cliente: Agrega un nuevo cliente a la tabla “Cliente” con los siguientes datos:
- Nombre: “Juan Pérez”
- Email: “juan.perez@example.com”
4.5 Ejercicio 05
Eliminación de un Préstamo: Elimina el préstamo con ID 3 de la tabla “Prestamo”.
4.6 Ejercicio 06
Consulta de Libros Nunca Prestados: Muestra los libros que nunca han sido prestados.
4.7 Ejercicio 07
Consulta de Préstamos Expirados: Muestra todos los préstamos cuya fecha de devolución ha pasado pero el libro no ha sido devuelto.
4.8 Ejercicio 08
Actualización Masiva de Stock: Incrementa el stock de todos los libros publicados antes del año 2000 en 5 unidades.
4.9 Ejercicio 09
Inserción de un Préstamo Completo: Agrega un nuevo préstamo, incluyendo la actualización del stock del libro prestado, para un cliente existente.
5 Github 05
Con base en el script de creación de RestauranteV1 y los datos de inserción proporcionados, realiza los siguientes ejercicios:
5.1 Ejercicio 01
Consulta de Reservaciones por Cliente: Muestra todas las reservaciones realizadas por el cliente con ID 3.
5.2 Ejercicio 02
Consulta de Mesas Disponibles: Muestra todas las mesas que no han sido reservadas para una fecha específica.
5.3 Ejercicio 03
Actualización de Precio de Menú: Actualiza el precio del menú con ID 5, incrementándolo en un 10%.
5.4 Ejercicio 04
Inserción de una Nueva Reservación: Agrega una nueva reservación para el cliente con ID 2, en la mesa 3, para la fecha “2024-04-30 19:00:00”.
5.5 Ejercicio 05
Eliminación de una Reservación: Elimina la reservación con ID 4.
5.6 Ejercicio 06
Consulta de Menús Más Populares: Muestra los menús más reservados, ordenados por popularidad.
5.7 Ejercicio 07
Optimización de Asignación de Mesas: Desarrolla una consulta o procedimiento que asigne automáticamente la mesa más pequeña disponible que pueda acomodar el número de comensales.
5.8 Ejercicio 08
Actualización Masiva de Precios: Incrementa el precio de todos los menús en un 5% para los platillos con precio mayor a $100.
5.9 Ejercicio 09
Inserción de un Cliente y su Reservación: Crea un procedimiento que permita agregar un nuevo cliente y, al mismo tiempo, realizar una reservación para él.
5.10 Ejercicio 10
Consulta de Reservaciones con Información de Clientes (INNER JOIN): Muestra todas las reservaciones junto con la información de los clientes correspondientes.
5.11 Ejercicio 11
Consulta de Todas las Mesas y Sus Reservaciones (LEFT JOIN): Muestra todas las mesas y las reservaciones asociadas, incluyendo las mesas sin reservaciones.
5.12 Ejercicio 12
Consulta de Reservaciones sin Clientes (RIGHT JOIN): Muestra todas las reservaciones que no tienen un cliente asignado.