TECNICATURA UNIVERSITARIA
EN PROGRAMACIÓN
A DISTANCIA
Módulo 5: Práctica INSERT-SELECT-DELETE-UPDATE
CONSULTAS INSERT-SELECT-DELETE-UPDATE – CONSULTAS WHERE, OPERADORES LÓGICOS Y
RELACIONALES-COPIA DE SEGURIDAD DE UNA BASE DE DATOS
HERRAMIENTAS USADAS: MYSQL Y WORKBENCH
Representación visual de las tablas
Tipos de datos usados:
TINYINT
Entero pequeño, rango de valores (de 0 a 255). Ocupa 1 byte de almacenamiento.
INT
Entero estándar, rango de valores(de 0 a 4294967295). Ocupa 4 bytes de almacenamiento.
VARCHAR(n)
Almacena cadenas de longitud variable con un máximo de n caracteres.
El valor de n puede ser de 1 a 65,535. Si se requiere un texto más largo, se pueden usar tipos de datos
TEXT.
Base de Datos
TECNICATURA UNIVERSITARIA
EN PROGRAMACIÓN
A DISTANCIA
INSERCIÓN DE REGISTROS DE UNA TABLA (INSERT)- MOSTRAR REGISTROS (SELECT)
INSERT SELECT
TABLA CARRERAS
Insertamos usando la forma más clásica:
Ejemplo1:
Vamos a insertar en la tabla carreras, una nueva carrera llamada ‘CIENCIA DE DATOS’ con 5 años de
duración perteneciente al departamento de ‘SISTEMAS’
Código:
use gestionacademica;
INSERT INTO carreras (id,nombre_carrera,duracion,departamento) VALUES
(1,'CIENCIA DE DATOS', '5', 'SISTEMAS');
Salida:
SELECT * FROM carreras;
(Siempre al comienzo de escribir código sql se usa la sentencia use que nos dice que vamos a usar la base
de datos que definamos)
Ejemplo2:
Vamos a insertar en la tabla carreras, 2 carreras, 'ANALISIS DE DATOS' y 'DISEÑO WEB' , en los registros
con id=2 , id=3 .
Código:
use gestionacademica;
INSERT INTO carreras (id,nombre_carrera,duracion, departamento) VALUES
(2,'ANALISIS DE DATOS', '3', 'SISTEMAS');
Base de Datos
TECNICATURA UNIVERSITARIA
EN PROGRAMACIÓN
A DISTANCIA
INSERT INTO carreras (id,nombre_carrera,duracion, departamento) VALUES
(3,'DISEÑO WEB', '3', 'ARTES Y DISEÑO');
Salida:
SELECT * FROM carreras;.
TABLA ALUMNOS
Insertamos usando la siguiente forma:
Ejemplo 1:
Vamos a insertar un alumno con nombre y apellido Juan Soto, con una edad de 25 años y que se inscribirá
en la carrera con id=1 (CIENCIA DE DATOS)
INSERT INTO alumnos SET id = 101, nombre="Juan", apellido="Soto", edad = 25,
id_carrera = 1;
Salida:
SELECT * FROM alumnos;
El id asignado es 101
Ejemplo 2:
Vamos a insertar 3 alumnos Gabriela, Diego y Mariela con los apellidos, edades y carreras
correspondientes siguiendo la misma sintaxis que el primer ejemplo
Base de Datos
TECNICATURA UNIVERSITARIA
EN PROGRAMACIÓN
A DISTANCIA
Código:
INSERT INTO alumnos SET id = 102, nombre = "Gabriela", apellido = "Ruiz", edad
= 35 , id_carrera = 2;
INSERT INTO alumnos SET id = 103, nombre = "Diego", apellido = "Lopez", edad =
29 , id_carrera = 3;
INSERT INTO alumnos SET id = 104, nombre = "Mariela", apellido = "Puertas",
edad = 19 , id_carrera = 1;
SELECT * FROM alumnos;
Gabriela esta inscripta en la carrera 2 que corresponde a ANALISIS DE DATOS, Diego a la carrera DISEÑO
WEB y Mariela a la carrera CIENCIA DE DATOS
TABLA ASIGNATURAS
Insertamos datos visualmente. Insertamos usando las opciones que nos da Workbench
Base de Datos
TECNICATURA UNIVERSITARIA
EN PROGRAMACIÓN
A DISTANCIA
MODIFICACIÓN DE REGISTROS DE UNA TABLA (UPDATE)
UPDATE
Para modificar uno o varios datos de uno o varios registros utilizamos "update" (actualizar).
Podemos modificar algunos registros, para ello debemos establecer condiciones de selección con
"where".
La consulta UPDATE en MySQL se utiliza para modificar los datos existentes en una tabla.
La sintaxis básica es:
UPDATE tabla SET columna1 = valor1, columna2 = valor2, ... WHERE
condición;
El WHERE es la condición que le asignamos a la consulta, es opcional, pero es
importante saber que, si se omite, se actualizarán todas las filas de la tabla, por eso es recomendable su
uso y su importancia en las consultas.
Ejemplo1:
1. Actualizar una sola columna:
Este ejemplo actualiza el nombre a Juan Jose para el alumno con id = 101.
Base de Datos
TECNICATURA UNIVERSITARIA
EN PROGRAMACIÓN
A DISTANCIA
Ejemplo2:
[Link] múltiples columnas:
Este ejemplo actualiza el nombre a BASE DE DATOS I y créditos a 12 para la asignatura con id =3.
La cláusula WHERE es crucial para especificar qué filas se verán afectadas por la actualización. Sin la
cláusula WHERE, se modificarán todas las filas de la tabla. Es iportante usarla con cuidado para evitar
modificar datos no deseados. Además, se pueden utilizar funciones y subconsultas para realizar
actualizaciones más complejas.
ELIMINACIÓN DE REGISTROS DE UNA TABLA
DELETE
La instrucción DELETE en MySQL se usa para eliminar filas de una tabla. Se puede usar con una
cláusula WHERE para eliminar filas específicas o sin ella para eliminar todas las filas de la tabla.
Sintaxis básica:
• nombre_tabla: Es el nombre de la tabla de la que se eliminarán las filas.
• condición: Es una expresión que especifica qué filas se eliminarán. Si se omite, se eliminarán
todas las filas de la tabla.
Ejemplo1:
1. Eliminar una fila específica:
Base de Datos
TECNICATURA UNIVERSITARIA
EN PROGRAMACIÓN
A DISTANCIA
Este ejemplo elimina la fila de la tabla alumnos donde el ID es igual a 103
Ejemplo2:
2. Eliminar varias filas que coincidan con una condición:
Este ejemplo elimina todas las filas de la tabla asignaturas donde la id_carrera es 1 y el créditos es 8.
Ejemplo 3:
3 Eliminar todas las filas de una tabla:
Este ejemplo elimina todas las filas de la tabla alumnos. ¡Cuidado con este! Asegúrate de que realmente
quieres eliminar todo antes de ejecutarlo.
SIEMPRE ES RECOMENDABLE CREAR UNA COPIA DE SEGURIDAD EN TABLAS Y BASE DE DATOS
AL FINAL DE ESTE DOCUMENTO TE EXPLICARÉ COMO HACERLO
OPERADORES DE
COMPARACIÓN
OPERADORES
Los operadores relacionales que veremos son los siguientes:
= igual
<> distinto
> mayor
< menor
>= mayor o igual
<= menor o igual
!= distinto a
7
Base de Datos
TECNICATURA UNIVERSITARIA
EN PROGRAMACIÓN
A DISTANCIA
Operador <>
En MySQL, el operador <> se utiliza para representar la comparación de "distinto de", es decir, para
verificar si dos valores son diferentes
Ejemplo 1
Supongamos que tenemos la tabla alumnos completada de la siguiente manera, Y queremos
traer todos los registros menos el del alumno Diego
Podemos seleccionar los registros cuyo nombre sea distinto de 'Diego', para ello usamos la
condición:
Ejemplo 2
Queremos listar solo las carreras que no tengan 5 años de duración. La sentencia sería la siguiente:
Operador =
En MySQL, el operador = se utiliza para la comparación de igualdad. Se usa para verificar si dos valores
son iguales
Ejemplo 1:
Listamos de la tabla carreras solo las carreras que tenga 5 años de duración
Base de Datos
TECNICATURA UNIVERSITARIA
EN PROGRAMACIÓN
A DISTANCIA
Ejemplo 2:
Listamos de la tablas asignaturas las asignaturas que tienen créditos por valor de 12
Operador > , Operador >= . Operador mayor , Operador mayor que
Ejemplo 1:
Podemos comparar valores numéricos. Por ejemplo, queremos mostrar los registros cuya edad sean
mayores a 25 en la tabla alumnos
Ejemplo 2 :
Mostrar los registros cuya edad sean mayores o iguales a 25 en la tabla alumnos. Vemos que incluye a los
alumnos que tienen 25 o más años
Operador < , Operador <= . Operador menor , Operador menor que
Base de Datos
TECNICATURA UNIVERSITARIA
EN PROGRAMACIÓN
A DISTANCIA
Ejemplo 1:
Este ejemplo listamos las asignaturas que tienen un crédito menor a 8
Ejemplo 2 :
Este ejemplo listamos las asignaturas que tienen un crédito menor o igual a 8. Vemos que también
incluye al valor 8
Operador !=
En MySQL, el operador != se utiliza para verificar si dos valores son diferentes, devolviendo TRUE si lo son
y FALSE si no lo son. También se puede usar el operador <> para el mismo propósito, ya que ambos son
equivalentes.
Ejemplo 1:
En este ejemplo mostramos de la tabla asignaturas , las asignaturas con un crédito distinto a 8
10
Base de Datos
TECNICATURA UNIVERSITARIA
EN PROGRAMACIÓN
A DISTANCIA
WHERE
OTROS EJEMPLOS DEL USO DE LA CLÁUSULA WHERE
Aquí tienes 7 ejemplos del uso de la cláusula WHERE aplicados a la base de datos gestionacademica,
utilizando diferentes condiciones relevantes para las tablas alumnos, carreras y asignaturas. También se
utilizan operadores lógicos AND, OR.
Los operadores lógicos AND y OR se utilizan para combinar condiciones en una cláusula WHERE o en
sentencias SELECT, UPDATE o DELETE.
AND
El operador AND devuelve TRUE si todas las condiciones conectadas por él son verdaderas, mientras
que OR devuelve TRUE si al menos una de las condiciones conectadas por él es verdadera.
OR
1. Seleccionar todos los alumnos de una carrera específica
SELECT * FROM alumnus WHERE id_carrera = 3;
Muestra todos los alumnos que están inscriptos en la carrera con id = 3.
2. Buscar asignaturas que tengan más de 5 créditos
SELECT * FROM asignaturas WHERE creditos > 5;
Filtra y muestra las asignaturas que otorgan más de 5 créditos.
3. Obtener alumnos que tengan menos de 21 años
SELECT * FROM alumnos WHERE edad < 21;
11
Base de Datos
TECNICATURA UNIVERSITARIA
EN PROGRAMACIÓN
A DISTANCIA
Lista los estudiantes jóvenes, menores de 21 años.
4. Mostrar carreras del departamento 'SISTEMAS'
SELECT * FROM carreras WHERE departamento = 'SISTEMAS';
Muestra todas las carreras que pertenecen al departamento de SISTEMAS.
5. Buscar asignaturas de la carrera de ID 1 y con al menos 4 créditos
SELECT * FROM asignaturas WHERE id_carrera = 1 AND creditos >= 8;
Asignaturas de una carrera específica que tienen 8 créditos o más.
6. Obtener alumnos cuyo apellido sea 'Lopez'
SELECT * FROM alumnos WHERE apellido = 'Lopez';
Devuelve todos los alumnos con apellido 'Lopez'.
7. Seleccionar carreras con duración igual a 5 años o del departamento 'ARTES Y DISEÑO'
SELECT * FROM carreras WHERE duracion = 5 OR departamento = 'ARTES Y DISEÑO';
12
Base de Datos
TECNICATURA UNIVERSITARIA
EN PROGRAMACIÓN
A DISTANCIA
Devuelve carreras que duran 5 años o que pertenecen al departamento indicado.
COMO CREAR COPIA DE SEGURIDAD EN WORKBENCH
Para hacer una copia de seguridad de una tabla en MySQL Workbench, primero debes conectarte a tu
base de datos, luego seleccionar la opción "Data Export" en el menú "Server". Selecciona la base de datos
y las tablas que deseas respaldar, elige la opción de exportación y ejecuta el proceso. Finalmente, verifica
la copia de seguridad.
PASOS
EXPORTAR BASE DE DATOS
1. Ir a Server->DataExport
13
Base de Datos
TECNICATURA UNIVERSITARIA
EN PROGRAMACIÓN
A DISTANCIA
2. Seleccionamos las siguientes opciones
3. Seleccionamos Start Export para exportar la base de datos
14
Base de Datos
TECNICATURA UNIVERSITARIA
EN PROGRAMACIÓN
A DISTANCIA
4. Proceso completado exitosamente
IMPORTAR BASE DE DATOS
1. ir a Server->DataExport
a. Una vez exportada la base de datos la sentencia DROP para eliminar la base de datos
“gestionacademica”. (DROP DATABASE gestionacademica).
b. Esto lo hacemos para practicar la recuperación de la base de datos que terminamos de
hacer la copia y posterior eliminación.
15
Base de Datos
TECNICATURA UNIVERSITARIA
EN PROGRAMACIÓN
A DISTANCIA
2- Seleccionamos las siguientes opciones
3- Importamos
16
Base de Datos
TECNICATURA UNIVERSITARIA
EN PROGRAMACIÓN
A DISTANCIA
4- Por último, refrescamos y vemos la base de datos importada
17
Base de Datos
TECNICATURA UNIVERSITARIA
EN PROGRAMACIÓN
A DISTANCIA
Realización:
La práctica consiste en la realización de los ejercicios y ejemplos planteados en el texto empleando
Workbench. Por cada ejercicio debe obtener la evidencia como una copia de pantalla del resultado
obtenido, acompañado del script que lo produjo.
Entrega:
Deberán entregar:
Un documento preferencia en PDF conformado con los títulos identificatorios de cada item realizado.
Criterios de Evaluación:
Se evaluará la correcta sintaxis y resultados y la correcta aplicación de los procedimientos realizados.
18
Base de Datos
TECNICATURA UNIVERSITARIA
EN PROGRAMACIÓN
A DISTANCIA
Módulo 5: JOINS - Uniendo Tablas
JOINS: Uniendo Tablas
Esta práctica está dividida en dos partes:
• Tipos de JOINS (INNER, LEFT, RIGHT)
• Consultas compleja con múltiples JOIN
Tipos de JOIN: INNER, LEFT y RIGHT
En una base de datos relacional, la información no se guarda toda junta en una sola tabla, sino dividida
en varias tablas relacionadas entre sí. Esto se hace para evitar la duplicación de datos, mejorar la
organización y facilitar el mantenimiento de la base.
Por ejemplo:
• Los alumnos están en una tabla.
• Las carreras en otra.
• Las asignaturas en otra.
Cada tabla guarda un tipo específico de información. Pero cuando queremos hacer una consulta que
combine datos de varias tablas, necesitamos reconstruir esas relaciones. Para eso usamos los comandos
JOIN, que permiten:
• Conectar una tabla con otra a través de un campo en común (por ejemplo, el id_carrera en
alumnos coincide con el id en carreras, se vincula por lo general una ).
• Obtener información combinada que tenga sentido para el análisis o la presentación de
resultados (por ejemplo: “mostrar el nombre del alumno y el nombre de su carrera”).
El uso de JOIN es lo que hace útil y potente a una base relacional, porque permite consultar datos
dispersos de forma coherente y estructurada.
Esta práctica está centrada en los tres tipos más importantes:
Base de Datos
TECNICATURA UNIVERSITARIA
EN PROGRAMACIÓN
A DISTANCIA
INNER JOIN
LEFT JOIN
RIGHT JOIN
Trabajaremos con las tablas existentes en la base gestionacademica:
alumnos
carreras
asignaturas
Datos de ejemplo sugeridos (insertar antes de comenzar, verificar que no
haya duplicación de claves primarias)
Tabla alumnos
id nombre apellido edad id_carrera
1 Ana Gómez 20 1
2 Juan Pérez 21 2
3 Sol Martínez 22 NULL
Tabla carreras
id nombre_carrera
1 Informática
2 Electrónica
3 Química
INNER JOIN – Solo coincidencias
SELECT [Link], carreras.nombre_carrera
FROM alumnos
INNER JOIN carreras ON alumnos.id_carrera = [Link];
Esta consulta muestra el nombre de cada alumno junto con el nombre de su carrera, pero solo si el
alumno tiene una carrera asignada y esa carrera existe.
SELECT [Link], carreras.nombre_carrera → Muestra el nombre del alumno y el
nombre de su carrera.
FROM alumnos → Se parte de la tabla alumnos.
INNER JOIN carreras → Se une con la tabla carreras.
ON alumnos.id_carrera = [Link] → Se especifica que deben coincidir el id_carrera del alumno
con el id de la carrera.
Base de Datos
TECNICATURA UNIVERSITARIA
EN PROGRAMACIÓN
A DISTANCIA
Resultado:
nombre nombre_carrera
Ana Informática
Juan Electrónica
EJERCICIOS A REALIZAR
Generar y ejecutar las consultas solicitadas, mostrando captura de pantalla de la
consulta y de su resultado.
1. Mostrar el nombre completo del alumno y la duración de su carrera.
2. Listar alumnos que pertenecen a carreras del departamento 'Exactas'.
LEFT JOIN – Todo desde la izquierda, coincidencias si existen
SELECT [Link], carreras.nombre_carrera
FROM alumnos
LEFT JOIN carreras ON alumnos.id_carrera = [Link];
Esta consulta muestra todos los alumnos, independientemente de si tienen o no una carrera
asignada. Si un alumno no tiene carrera, en la columna nombre_carrera aparecerá NULL.
SELECT [Link], carreras.nombre_carrera → Muestra el nombre de cada alumno y el
nombre de su carrera (si tiene).
FROM alumnos → Se parte de la tabla alumnos.
LEFT JOIN carreras → Se une con la tabla carreras, pero conservando todos los registros de la
tabla izquierda (alumnos).
ON alumnos.id_carrera = [Link] → Se comparan los campos id_carrera (de alumnos) con id
(de carreras).
Resultado:
nombre nombre_carrera
Ana Informática
Juan Electrónica
Sol NULL
Base de Datos
TECNICATURA UNIVERSITARIA
EN PROGRAMACIÓN
A DISTANCIA
"Sol" aparece en el resultado aunque no tenga carrera asignada (id_carrera = NULL), gracias
al uso de LEFT JOIN.
EJERCICIOS A REALIZAR
Generar y ejecutar las consultas solicitadas, mostrando captura de pantalla de la
consulta y de su resultado.
3. Mostrar todos los alumnos junto con el nombre y duración de su carrera (si la tienen).
4. Mostrar los nombres de alumnos y el departamento de su carrera, incluyendo los que no
tienen carrera asignada.
RIGHT JOIN – Todo desde la derecha, coincidencias si existen
SELECT [Link], carreras.nombre_carrera
FROM alumnos
RIGHT JOIN carreras ON alumnos.id_carrera = [Link];
Explicación:
Esta consulta muestra todas las carreras, incluso si no tienen alumnos asociados. Si una carrera
no tiene ningún alumno, en la columna nombre aparecerá NULL.
SELECT [Link], carreras.nombre_carrera → Muestra el nombre del alumno (si existe)
y el nombre de la carrera.
FROM alumnos → Se parte de la tabla alumnos, aunque el protagonismo lo tiene carreras por el
RIGHT JOIN.
RIGHT JOIN carreras → Se conserva toda la información de la tabla derecha (carreras),
uniendo con la tabla alumnos.
ON alumnos.id_carrera = [Link] → Se unen los datos donde el id_carrera del alumno coincide
con el id de la carrera.
Resultado:
nombre nombre_carrera
Ana Informática
Juan Electrónica
NULL Química
Base de Datos
TECNICATURA UNIVERSITARIA
EN PROGRAMACIÓN
A DISTANCIA
EJERCICIOS A REALIZAR
Generar y ejecutar las consultas solicitadas, mostrando captura de pantalla de la
consulta y de su resultado.
5. Mostrar todas las carreras y el nombre de sus alumnos si los tienen.
6. Mostrar todas las carreras junto con el departamento y los apellidos de los alumnos (si
hay).
Consultas con múltiples JOINS
Introducción
En los ejercicios anteriores ya trabajamos con datos de ejemplo sobre las tablas alumnos, carreras y
asignaturas.
Ahora vamos a agregar una nueva tabla llamada matriculas que nos permitirá vincular alumnos
con asignaturas y registrar sus calificaciones. Esta tabla representa el acto de inscripción a una
materia y es común en cualquier sistema académico real.
Esta tabla no estaba incluida en la base original gestionacademica, pero es una extensión
lógica y necesaria para esta práctica.
Creamos la tabla matriculas
CREATE TABLE IF NOT EXISTS matriculas (
id_alumno INT NOT NULL,
id_asignatura INT NOT NULL,
calificacion DECIMAL(3,1),
PRIMARY KEY (id_alumno, id_asignatura),
FOREIGN KEY (id_alumno) REFERENCES alumnos(id),
FOREIGN KEY (id_asignatura) REFERENCES asignaturas(id)
);
Explicación:
FOREIGN KEY (id_alumno) REFERENCES alumnos(id) Esto indica que el campo id_alumno de
la tabla matriculas está relacionado con el campo id de la tabla alumnos. Es decir, solo se puede
insertar un id_alumno si ese valor ya existe en la tabla alumnos.
FOREIGN KEY (id_asignatura) REFERENCES asignaturas(id) Lo mismo ocurre con
id_asignatura: debe coincidir con un valor ya existente en el campo id de la tabla asignaturas.
Base de Datos
TECNICATURA UNIVERSITARIA
EN PROGRAMACIÓN
A DISTANCIA
¿Para qué sirve REFERENCES?
Establece relaciones entre tablas Define que ciertos datos en una tabla deben coincidir con datos
de otra tabla.
Garantiza integridad referencial Evita que se puedan insertar datos "huérfanos". Por ejemplo, no
podés matricular a un alumno que no existe.
Facilita consultas con JOINs Al tener estas relaciones claras, es más fácil hacer consultas entre
varias tablas sabiendo cómo están conectadas.
¿Qué pasa si no existe el valor referenciado?
Por ejemplo, si intentás hacer esto:
INSERT INTO matriculas (id_alumno, id_asignatura, calificacion)
VALUES (999, 1, 8.0);
Y no existe un alumno con id = 999, la base de datos rechazará la operación. Esto protege la
coherencia de los datos.
Insertamos datos de ejemplo en la tabla matriculas (basados en los datos de
ejemplos que habíamos insertado en los puntos anteriores)
INSERT INTO matriculas (id_alumno, id_asignatura, calificacion) VALUES
(1, 1, 9.0), -- Ana en Programación I
(1, 2, 8.0), -- Ana en Bases de Datos
(2, 3, 7.5), -- Juan en Electrónica I
(3, 1, 6.5); -- Sol en Programación I
Ejecutamos la Consulta de ejemplo con múltiples JOIN
SELECT
[Link],
[Link],
c.nombre_carrera,
[Link] AS asignatura,
[Link]
FROM alumnos a
INNER JOIN carreras c ON a.id_carrera = [Link]
INNER JOIN matriculas m ON [Link] = m.id_alumno
INNER JOIN asignaturas asig ON m.id_asignatura = [Link]
WHERE c.nombre_carrera = 'Informática'
ORDER BY [Link], [Link], [Link];
Base de Datos
TECNICATURA UNIVERSITARIA
EN PROGRAMACIÓN
A DISTANCIA
¿Qué hace esta consulta?
Esta consulta busca mostrar información detallada de los alumnos que cursan carreras de
Informática, incluyendo sus calificaciones en asignaturas. Para lograrlo, se combinan cuatro
tablas usando INNER JOIN. Veamos cada parte:
alumnos a: Se da el alias a a la tabla alumnos.
carreras c: Alias c para la tabla carreras.
matriculas m: Alias m para la tabla que vincula alumnos y asignaturas.
asignaturas asig: Alias asig para la tabla que guarda información de cada asignatura.
Los alias son abreviaturas de los nombres de las tablas, se utilizan para evitar escribir
muchas veces el nombre completo de la tabla, reduciendo la longitud de la consulta y
mejorando la legibilidad.
¿Cómo se unen las tablas?
a.id_carrera = [Link]: vincula cada alumno con su carrera.
[Link] = m.id_alumno: relaciona al alumno con sus asignaturas inscritas.
m.id_asignatura = [Link]: relaciona la matrícula con la asignatura concreta.
WHERE c.nombre_carrera = 'Informática': Esto filtra los resultados para mostrar solo los alumnos
que están en la carrera 'Informática'. Verificar que se usen comillas simples ('), no tipográficas (‘’).
Resultado esperado:
nombre apellido nombre_carrera asignatura calificación
Ana Gómez Informática Bases de Datos 8.0
Ana Gómez Informática Programación I 9.0
🧠
Observaciones:
Sol no tiene carrera asignada, así que queda fuera por el INNER JOIN con carreras.
Juan cursa Electrónica, así que es descartado por la cláusula WHERE.
Solo Ana está en la carrera de Informática y tiene registros en matriculas con asignaturas
correspondientes.
Base de Datos
TECNICATURA UNIVERSITARIA
EN PROGRAMACIÓN
A DISTANCIA
EJERCICIOS A REALIZAR
Generar y ejecutar las consultas solicitadas, mostrando captura de pantalla de la
consulta y de su resultado.
7. Ejecutar la consulta del ejemplo. Mostrar captura de la consulta y del resultado.
8. Realizar una consulta que muestre el nombre y apellido de los alumnos, el nombre de la
carrera que cursan, el nombre de las asignaturas en las que están matriculados y la
calificación obtenida, solo si la asignatura pertenece a la misma carrera que cursa e l
alumno.
Pista: Tanto la tabla alumnos como la tabla asignaturas tienen un campo id_carrera. Solo
deben mostrarse las asignaturas que pertenezcan a la misma carrera que cursa el alumno
(coincidencia entre IDs a usar en WHERE).
Base de Datos
TECNICATURA UNIVERSITARIA
EN PROGRAMACIÓN
A DISTANCIA
Módulo 5: Práctica - Vistas
Básico
1. Crear una vista llamada vista_alumnos_basica que muestre el id, nombre y apellido
de todos los alumnos registrados en la tabla alumnos.
2. Luego, realizar una consulta mixta que muestre el nombre y apellido de cada alumno,
junto con el nombre de su carrera, combinando la vista vista_alumnos_carreras con
la tabla carreras.
Intermedio
3. Crear una vista llamada vista_asignaturas_carrera que muestre el nombre de la
asignatura, sus créditos y el nombre_carrera al que pertenece.
4. Crear una vista llamada vista_asignaturas_credito_alto que contenga el nombre de
las asignaturas y su cantidad de créditos, solo si tienen más de 5 créditos.
5. Luego, realizar una consulta mixta que muestre el nombre de la carrera y el nombre
de las asignaturas con créditos altos (vista) asociadas a cada carrera.
Avanzado
6. Crear una vista llamada vista_creditos_por_alumno que muestre el id, nombre y
apellido del alumno, junto con el total de créditos sumados de todas las asignaturas
que pertenecen a la carrera del alumno.
7. Crear una vista llamada vista_alumnos_mayores que contenga a los alumnos
mayores de 21 años, mostrando su nombre, apellido, edad e id_carrera.
8. Crear una segunda vista llamada vista_asignaturas_creditos que muestre las
asignaturas con más de 3 créditos.
9. Hacer una consulta mixta que muestre el nombre completo del alumno, su edad, el
nombre de su carrera, y las asignaturas con más de 3 créditos que le corresponden
por carrera.
Actualizaciones de vistas
10. Actualizar la vista vista_alumnos_basica para que también muestre la edad del
alumno.
11. Actualizar la vista vista_asignaturas_credito_alto para incluir también el nombre de la
carrera a la que pertenece cada asignatura.
12. Actualizar la vista vista_asignaturas_carrera para que solo muestre asignaturas con
más de 3 créditos.
13. Actualizar la vista vista_alumnos_mayores para que también incluya el nombre de la
carrera que cursan.
14. Actualizar la vista vista_creditos_por_alumno para que también incluya el nombre de
la carrera del alumno.
Base de Datos
TECNICATURA UNIVERSITARIA
EN PROGRAMACIÓN
A DISTANCIA
Entrega:
Deberán entregar:
Un documento preferencia en PDF conformado con los títulos identificatorios de cada item
realizado, con las capturas de pantalla y los script de creación de las vistas y/o resultados de las
actualizaciones.
Criterios de Evaluación:
Se evaluará la correcta sintaxis y resultados y la correcta aplicación de los procedimientos
realizados.
Base de Datos
TECNICATURA UNIVERSITARIA
EN PROGRAMACIÓN
A DISTANCIA
Módulo 5: Subconsultas- Práctica
Básico
1. Mostrar el nombre y apellido de los alumnos que tiene la edad menor al promedio.
2. Mostrar el id y el nombre de la carrera de las que no tienen asignaturas.
Intermedio
3. Mostrar el nombre del departamento y la suma de la duración total de cada departamento.
4. Mostrar el nombre de la carrera y la cantidad de alumnos que cursando en cada carrera.
5. Mostrar la cantidad de carreras de cada departamento.
Avanzado
6. Mostrar el nombre y apellido de los alumnos que tienen créditos mayores a 10.
7. Mostrar el nombre y apellido de los alumnos que no cursan en el departamento de ARTES Y
DISEÑO.
8. Mostrar el nombre de las asignaturas donde se encuentre el promedio de los alumnos más
jóvenes.
Entrega:
Deberán entregar:
Un documento preferencia en PDF conformado con los títulos identificatorios de cada item realizado, con
las capturas de pantalla y los script de creación de las subconsultas y/o resultados obtenidos.
Criterios de Evaluación:
Se evaluará la correcta sintaxis, resultados y la correcta aplicación de las técnicas.
Base de Datos