Está en la página 1de 31

Nombre: América Jazmín

Adame Reyes.
Maestra: Blanca Briza
Gallegos Aguilar.
Actividad: Evaluación 1.2
Grupo:511
1. Crear la base de datos llamada Evaluacion_America.
CREATE DATABASE EVALUACION_AMERICA;

2. Creación de las tablas.

TABLA 1-PERSONA

CREATE TABLE PERSONA(

ID_ALUMNO INT(10)PRIMARY KEY,

NIF VARCHAR(9),

NOMBRE VARCHAR(25),

APELLIDO1 VARCHAR(50),

APELLIDO2 VARCHAR(50),

CIUDAD VARCHAR(25),

DIRECCION VARCHAR(50),

TELEFONO VARCHAR(9),

FECHA_NACIMIENTO DATE,

SEXO ENUM("H","M"),

TIPO ENUM("profesor","alumno"),

ID_PROFESOR INT (10)

);
TABLA 2-ASIGNATURA

CREATE TABLE ASIGNATURA(

ID_ASIGNATURA INT (10) PRIMARY KEY,

NOMBRE VARCHAR (100),

CREDITOS FLOAT,

TIPO ENUM ('BASICA','OBLIGATORIA','OPTATIVA'),

CURSO TINYINT(3),

CUATRIMESTRE TINYINT(3),

ID_PROFESOR INT (10),

ID_GRADO INT (10)

);
TABLA 3-PROFESOR

CREATE TABLE PROFESOR(

ID_PROFESOR INT(10)PRIMARY KEY,

ID_DEPARTAMENTO INT(10)

);
TABLA 4-DEPARTAMENTO

CREATE TABLE DEPARTAMENTO(

ID_DEPARTAMENTO INT(10)PRIMARY KEY,

NOMBRE VARCHAR(50)

);

TABLA 5-CURSO_ESCOLAR

CREATE TABLE CURSO_ESCOLAR(

ID_CURSO_ESCOLAR INT (10) PRIMARY KEY,

ANYO_INICIO YEAR(4),

ANYO_FIN YEAR (4)

);
TABLA 6-GRADO

CREATE TABLE GRADO (

ID_GRADO INT (10) PRIMARY KEY,

NOMBRE VARCHAR(100)

);

TABLA 7-ALUMNO_SE_MATRICULA_ASIGNATURA

CREATE TABLE ALUMNO _MATRICULA_ASIGNATURA(

ID_ALUMNO INT(10),

ID_ASIGNATURA INT(10),

ID_CURSO_ESCOLAR INT (10)

);
3. Relación de las tablas con las PK.

PROFESOR – DEPARTAMENTO
VC
ALTER TABLE profesor ADD CONSTRAINT fk_pd

FOREIGN KEY (ID_DEPARTAMENTO)

REFERENCES departamento (ID_DEPARTAMENTO);

ALUMNO_SE_MATRICULA_ASIGNATURA-CURSO_ESCOLAR

ALTER TABLE ALUMNO_MATRICULA_ASIGNATURA ADD CONSTRAINT FK_AC

FOREIGN KEY (ID_CURSO_ESCOLAR)

REFERENCES CURSO_ESCOLAR (ID_CURSO_ESCOLAR);


ALUMNO_SE_MATRICULA_ASIGNATURA-ASIGNATURA

ALTER TABLE ALUMNO_MATRICULA_ASIGNATURA ADD CONSTRAINT FK_AA

FOREIGN KEY (ID_ASIGNATURA)

REFERENCES ASIGNATURA(ID_ASIGNATURA);

ALUMNO_SE_MATRICULA_ASIGNATURA-PERSONA

ALTER TABLE ALUMNO _MATRICULA_ASIGNATURA ADD CONSTRAINT FK_AP

FOREIGN KEY (ID_ALUMNO)

REFERENCES PERSONA(ID_ALUMNO);
ASIGNATURA – PROFESOR

ALTER TABLE asignatura ADD CONSTRAINT fk_app

FOREIGN KEY (ID_PROFESOR)

REFERENCES profesor (ID_PROFESOR);

ASIGNATURA – GRADO

ALTER TABLE asignatura ADD CONSTRAINT fk_ag

FOREIGN KEY (ID_GRADO)

REFERENCES grado (ID_GRADO);


4. Llenado de tablas.

TABLA DEPARTAMENTO

INSERT INTO departamento(ID_DEPARTAMENTO,NOMBRE)

VALUES (1, 'Informática'),

(2, 'Matemáticas'),

(3, 'Economía y Empresa'),

(4, 'Educación'),

(5, 'Agronomía'),

(6, 'Química y Física'),

(7, 'Filología'),

(8, 'Derecho'),

(9, 'Biología y Geología');


TABLA PERSONA

INSERT INTO
persona(ID_ALUMNO,NIF,NOMBRE,APELLIDO1,APELLIDO2,CIUDAD,DIRECCION,TELEFON
O,FECHA_NACIMIENTO,SEXO,TIPO,ID_PROFESOR)

VALUES (1, '26902806M', 'Salvador', 'Sánchez', 'Pérez', 'Almería', 'C/


Real del barrio alto', '950254837', '1991/03/28', 'H', 'alumno',8),

(2, '89542419S', 'Juan', 'Saez', 'Vega', 'Almería', 'C/ Mercurio',


'618253876', '1992/08/08', 'H', 'alumno',3),

(3, '11105554G', 'Zoe', 'Ramirez', 'Gea', 'Almería', 'C/ Marte',


'618223876', '1979/08/19', 'M', 'profesor',5),

(4, '17105885A', 'Pedro', 'Heller', 'Pagac', 'Almería', 'C/ Estrella


fugaz', NULL, '2000/10/05', 'H', 'alumno',12),

(5, '38223286T', 'David', 'Schmidt', 'Fisher', 'Almería', 'C/ Venus',


'678516294', '1978/01/19', 'H', 'profesor',10),

(6, '04233869Y', 'José', 'Koss', 'Bayer', 'Almería', 'C/ Júpiter',


'628349590', '1998/01/28', 'H', 'alumno',14),

(7, '97258166K', 'Ismael', 'Strosin', 'Turcotte', 'Almería', 'C/


Neptuno', NULL, '1999/05/24', 'H', 'alumno',13),

(8, '79503962T', 'Cristina', 'Lemke', 'Rutherford', 'Almería', 'C/


Saturno', '669162534', '1977/08/21', 'M', 'profesor',16),

(9, '82842571K', 'Ramón', 'Herzog', 'Tremblay', 'Almería', 'C/ Urano',


'626351429', '1996/11/21', 'H', 'alumno',15),

(10, '61142000L', 'Esther', 'Spencer', 'Lakin', 'Almería', 'C/ Plutón',


NULL, '1977/05/19', 'M', 'profesor',18),

(11, '46900725E', 'Daniel', 'Herman', 'Pacocha', 'Almería', 'C/ Andarax',


'679837625', '1997/04/26', 'H', 'alumno',17),

(12, '85366986W', 'Carmen', 'Streich', 'Hirthe', 'Almería', 'C/


Almanzora', NULL, '1971-04-29', 'M', 'profesor',3),

(13, '73571384L', 'Alfredo', 'Stiedemann', 'Morissette', 'Almería', 'C/


Guadalquivir', '950896725', '1980/02/01', 'H', 'profesor',14),

(14, '82937751G', 'Manolo', 'Hamill', 'Kozey', 'Almería', 'C/ Duero',


'950263514', '1977/01/02', 'H', 'profesor',8),

(15, '80502866Z', 'Alejandro', 'Kohler', 'Schoen', 'Almería', 'C/ Tajo',


'668726354', '1980/03/14', 'H', 'profesor',3),

(16, '10485008K', 'Antonio', 'Fahey', 'Considine', 'Almería', 'C/ Sierra


de los Filabres', NULL, '1982/03/18', 'H', 'profesor',5),

(17, '85869555K', 'Guillermo', 'Ruecker', 'Upton', 'Almería', 'C/ Sierra


de Gádor', NULL, '1973/05/05', 'H', 'profesor',12),

(18, '04326833G', 'Micaela', 'Monahan', 'Murray', 'Almería', 'C/ Veleta',


'662765413', '1976/02/25', 'H', 'profesor',18),
(19, '11578526G', 'Inma', 'Lakin', 'Yundt', 'Almería', 'C/ Picos de
Europa', '678652431', '1998/09/01', 'M', 'alumno',10),

(20, '79221403L', 'Francesca', 'Schowalter', 'Muller', 'Almería', 'C/


Quinto pino', NULL, '1980/10/31', 'H', 'profesor',15),

(21, '79089577Y', 'Juan', 'Gutiérrez', 'López', 'Almería', 'C/ Los


pinos', '678652431', '1998/01/01', 'H', 'alumno',13),

(22, '41491230N', 'Antonio', 'Domínguez', 'Guerrero', 'Almería', 'C/ Cabo


de Gata', '626652498', '1999/02/11', 'H', 'alumno',17),

(23, '64753215G', 'Irene', 'Hernández', 'Martínez', 'Almería', 'C/


Zapillo', '628452384', '1996/03/12', 'M', 'alumno',20),

(24, '85135690V', 'Sonia', 'Gea', 'Ruiz', 'Almería', 'C/ Mercurio',


'678812017', '1995/04/13', 'M', 'alumno',14);
TABLA PROFESOR

INSERT INTO profesor (ID_PROFESOR,ID_DEPARTAMENTO)

VALUES (3, 1),

(5, 2),

(8, 3),

(12, 4),

(13, 6),

(14, 1),

(15, 2),

(16, 3),

(17, 4),

(18, 5),

(20, 6);
TABLA GRADO

INSERT INTO GRADO (ID_GRADO,NOMBRE)

VALUES (1, 'GRADO EN INGENIERÍA AGRÍCOLA (PLAN 2015)'),

(2, 'GRADO EN INGENIERÍA ELÉCTRICA (PLAN 2014)'),

(3, 'GRADO EN INGENIERÍA ELECTRÓNICA INDUSTRIAL (PLAN 2010)'),

(4, 'GRADO EN INGENIERÍA INFORMÁTICA (PLAN 2015)'),

(5, 'GRADO EN INGENIERÍA MECÁNICA (PLAN 2010)'),

(6, 'GRADO EN INGENIERÍA QUÍMICA INDUSTRIAL (PLAN 2010)'),

(7, 'GRADO EN BIOTECNOLOGÍA (PLAN 2015)'),

(8, 'GRADO EN CIENCIAS AMBIENTALES (PLAN 2009)'),

(9, 'GRADO EN MATEMÁTICAS (PLAN 2010)'),

(10, 'GRADO EN QUÍMICA (PLAN 2009)');


TABLA ASIGNATURA

INSERT INTO asignatura


(ID_ASIGNATURA,NOMBRE,CREDITOS,TIPO,CURSO,CUATRIMESTRE,ID_PROFESOR,ID_GRA
DO)

VALUES (1, 'Álgegra lineal y matemática discreta', 6, 'básica', 1, 1, 3,


4),

(2, 'Cálculo', 6, 'básica', 1, 1, 14, 4),

(3, 'Física para informática', 6, 'básica', 1, 1, 3, 4),

(4, 'Introducción a la programación', 6, 'básica', 1, 1, 14, 4),

(5, 'Organización y gestión de empresas', 6, 'básica', 1, 1, 3, 4),

(6, 'Estadística', 6, 'básica', 1, 2, 14, 4),

(7, 'Estructura y tecnología de computadores', 6, 'básica', 1, 2, 3, 4),

(8, 'Fundamentos de electrónica', 6, 'básica', 1, 2, 14, 4),

(9, 'Lógica y algorítmica', 6, 'básica', 1, 2, 3, 4),

(10, 'Metodología de la programación', 6, 'básica', 1, 2, 14, 4),

(11, 'Arquitectura de Computadores', 6, 'básica', 2, 1, 3, 4),

(12, 'Estructura de Datos y Algoritmos I', 6, 'obligatoria', 2, 1, 3, 4),

(13, 'Ingeniería del Software', 6, 'obligatoria', 2, 1, 14, 4),

(14, 'Sistemas Inteligentes', 6, 'obligatoria', 2, 1, 3, 4),

(15, 'Sistemas Operativos', 6, 'obligatoria', 2, 1, 14, 4),

(16, 'Bases de Datos', 6, 'básica', 2, 2, 14, 4),

(17, 'Estructura de Datos y Algoritmos II', 6, 'obligatoria', 2, 2, 14,


4),

(18, 'Fundamentos de Redes de Computadores', 6 ,'obligatoria', 2, 2, 3,


4),

(19, 'Planificación y Gestión de Proyectos Informáticos', 6,


'obligatoria', 2, 2, 3, 4),

(20, 'Programación de Servicios Software', 6, 'obligatoria', 2, 2, 14,


4),

(21, 'Desarrollo de interfaces de usuario', 6, 'obligatoria', 3, 1, 14,


4),

(22, 'Ingeniería de Requisitos', 6, 'optativa', 3, 1, NULL, 4),

(23, 'Integración de las Tecnologías de la Información en las


Organizaciones', 6, 'optativa', 3, 1, NULL, 4),

(24, 'Modelado y Diseño del Software 1', 6, 'optativa', 3, 1, NULL, 4),


(25, 'Multiprocesadores', 6, 'optativa', 3, 1, NULL, 4),

(26, 'Seguridad y cumplimiento normativo', 6, 'optativa', 3, 1, NULL, 4),

(27, 'Sistema de Información para las Organizaciones', 6, 'optativa', 3,


1, NULL, 4),

(28, 'Tecnologías web', 6, 'optativa', 3, 1, NULL, 4),

(29, 'Teoría de códigos y criptografía', 6, 'optativa', 3, 1, NULL, 4),

(30, 'Administración de bases de datos', 6, 'optativa', 3, 2, NULL, 4),

(31, 'Herramientas y Métodos de Ingeniería del Software', 6, 'optativa',


3, 2, NULL, 4),

(32, 'Informática industrial y robótica', 6, 'optativa', 3, 2, NULL, 4),

(33, 'Ingeniería de Sistemas de Información', 6, 'optativa', 3, 2, NULL,


4),

(34, 'Modelado y Diseño del Software 2', 6, 'optativa', 3, 2, NULL, 4),

(35, 'Negocio Electrónico', 6, 'optativa', 3, 2, NULL, 4),

(36, 'Periféricos e interfaces', 6, 'optativa', 3, 2, NULL, 4),

(37, 'Sistemas de tiempo real', 6, 'optativa', 3, 2, NULL, 4),

(38, 'Tecnologías de acceso a red', 6, 'optativa', 3, 2, NULL, 4),

(39, 'Tratamiento digital de imágenes', 6, 'optativa', 3, 2, NULL, 4),

(40, 'Administración de redes y sistemas operativos', 6, 'optativa', 4,


1, NULL, 4),

(41, 'Almacenes de Datos', 6, 'optativa', 4, 1, NULL, 4),

(42, 'Fiabilidad y Gestión de Riesgos', 6, 'optativa', 4, 1, NULL, 4),

(43, 'Líneas de Productos Software', 6, 'optativa', 4, 1, NULL, 4),

(44, 'Procesos de Ingeniería del Software 1', 6, 'optativa', 4, 1, NULL,


4),

(45, 'Tecnologías multimedia', 6, 'optativa', 4, 1, NULL, 4),

(46, 'Análisis y planificación de las TI', 6, 'optativa', 4, 2, NULL, 4),

(47, 'Desarrollo Rápido de Aplicaciones', 6, 'optativa', 4, 2, NULL, 4),

(48, 'Gestión de la Calidad y de la Innovación Tecnológica', 6,


'optativa', 4, 2, NULL, 4),

(49, 'Inteligencia del Negocio', 6, 'optativa', 4, 2, NULL, 4),

(50, 'Procesos de Ingeniería del Software 2', 6, 'optativa', 4, 2, NULL,


4),

(51, 'Seguridad Informática', 6, 'optativa', 4, 2, NULL, 4),

(52, 'Biologia celular', 6, 'básica', 1, 1, NULL, 7),


(53, 'Física', 6, 'básica', 1, 1, NULL, 7),

(54, 'Matemáticas I', 6, 'básica', 1, 1, NULL, 7),

(55, 'Química general', 6, 'básica', 1, 1, NULL, 7),

(56, 'Química orgánica', 6, 'básica', 1, 1, NULL, 7),

(57, 'Biología vegetal y animal', 6, 'básica', 1, 2, NULL, 7),

(58, 'Bioquímica', 6, 'básica', 1, 2, NULL, 7),

(59, 'Genética', 6, 'básica', 1, 2, NULL, 7),

(60, 'Matemáticas II', 6, 'básica', 1, 2, NULL, 7),

(61, 'Microbiología', 6, 'básica', 1, 2, NULL, 7),

(62, 'Botánica agrícola', 6, 'obligatoria', 2, 1, NULL, 7),

(63, 'Fisiología vegetal', 6, 'obligatoria', 2, 1, NULL, 7),

(64, 'Genética molecular', 6, 'obligatoria', 2, 1, NULL, 7),

(65, 'Ingeniería bioquímica', 6, 'obligatoria', 2, 1, NULL, 7),

(66, 'Termodinámica y cinética química aplicada', 6, 'obligatoria', 2, 1,


NULL, 7),

(67, 'Biorreactores', 6, 'obligatoria', 2, 2, NULL, 7),

(68, 'Biotecnología microbiana', 6, 'obligatoria', 2, 2, NULL, 7),

(69, 'Ingeniería genética', 6, 'obligatoria', 2, 2, NULL, 7),

(70, 'Inmunología', 6, 'obligatoria', 2, 2, NULL, 7),

(71, 'Virología', 6, 'obligatoria', 2, 2, NULL, 7),

(72, 'Bases moleculares del desarrollo vegetal', 4.5, 'obligatoria', 3,


1, NULL, 7),

(73, 'Fisiología animal', 4.5, 'obligatoria', 3, 1, NULL, 7),

(74, 'Metabolismo y biosíntesis de biomoléculas', 6, 'obligatoria', 3, 1,


NULL, 7),

(75, 'Operaciones de separación', 6, 'obligatoria', 3, 1, NULL, 7),

(76, 'Patología molecular de plantas', 4.5, 'obligatoria', 3, 1, NULL,


7),

(77, 'Técnicas instrumentales básicas', 4.5, 'obligatoria', 3, 1, NULL,


7),

(78, 'Bioinformática', 4.5, 'obligatoria', 3, 2, NULL, 7),

(79, 'Biotecnología de los productos hortofrutículas', 4.5,


'obligatoria', 3, 2, NULL, 7),

(80, 'Biotecnología vegetal', 6, 'obligatoria', 3, 2, NULL, 7),


(81, 'Genómica y proteómica', 4.5, 'obligatoria', 3, 2, NULL, 7),

(82, 'Procesos biotecnológicos', 6, 'obligatoria', 3, 2, NULL, 7),

(83, 'Técnicas instrumentales avanzadas', 4.5, 'obligatoria', 3, 2, NULL,


7);
TABLA CURSO_ESCOLAR

INSERT INTO curso_escolar (id_curso_escolar,anyo_inicio,anyo_fin)

VALUES (1, 2014, 2015),

(2, 2015, 2016),

(3, 2016, 2017),

(4, 2017, 2018),

(5, 2018, 2019);


TABLA ALUMNO_SE_MATRICULA_ASIGNATURA

INSERT INTO
alumno_se_matricula_asignatura(id_alumno,id_asignatura,id_curso_escolar)

VALUES (1, 1, 1),

(1, 2, 1),

(1, 3, 1),

(2, 1, 1),

(2, 2, 1),

(2, 3, 1),

(4, 1, 1),

(4, 2, 1),

(4, 3, 1),

(24, 1, 5),

(24, 2, 5),

(24, 3, 5),

(24, 4, 5),

(24, 5, 5),

(24, 6, 5),

(24, 7, 5),

(24, 8, 5),

(24, 9, 5),

(24, 10, 5),

(23, 1, 5),

(23, 2, 5),

(23, 3, 5),

(23, 4, 5),

(23, 5, 5),

(23, 6, 5),

(23, 7, 5),

(23, 8, 5),
(23, 9, 5),

(23, 10, 5),

(19, 1, 5),

(19, 2, 5),

(19, 3, 5),

(19, 4, 5),

(19, 5, 5),

(19, 6, 5),

(19, 7, 5),

(19, 8, 5),

(19, 9, 5),

(19, 10, 5);


CONSULTAS

1. Devuelve un listado con los datos de todas las alumnas que se han
matriculado alguna vez en el Grado en Ingeniería Informática (Plan 2015).

SELECT* FROM persona RIGHT JOIN grado ON grado.Id_grado=4 WHERE


persona.sexo='M'

2. Devuelve un listado con todas las asignaturas ofertadas en el Grado en


Ingeniería Informática (Plan 2015).

SELECT asignatura.nombre FROM asignatura RIGHT JOIN grado ON


asignatura.Id_grado = grado.Id_grado WHERE grado.nombre = 'Grado en
Ingeniería Informática (Plan 2015)'
3. Devuelve un listado de los profesores junto con el nombre del departamento
al que están vinculados. El listado debe devolver cuatro columnas, primer
apellido, segundo apellido, nombre y nombre del departamento. El resultado
estará ordenado alfabéticamente de menor a mayor por los apellidos y el
nombre.

SELECT persona.apellido1, persona.apellido2, persona.nombre,


departamento.nombre FROM persona INNER JOIN profesor ON
persona.Id_alumno = profesor.Id_profesor INNER JOIN departamento ON
profesor.Id_departamento = departamento.Id_departamento ORDER BY
persona.apellido1, persona.apellido2, persona.nombre;
4. Devuelve un listado con el nombre de las asignaturas, año de inicio y año de
fin del curso escolar del alumno con nif 26902806M.

SELECT asignatura.nombre, curso_escolar.anyo_inicio,


curso_escolar.anyo_fin FROM persona INNER JOIN
alumno_matricula_asignatura ON persona.Id_alumno =
alumno_matricula_asignatura.Id_alumno INNER JOIN asignatura ON
alumno_matricula_asignatura.Id_asignatura = asignatura.Id_asignatura
INNER JOIN curso_escolar ON
alumno_matricula_asignatura.Id_curso_escolar =
curso_escolar.Id_curso_escolar WHERE persona.nif = '26902806M';

5. Devuelve un listado con el nombre de todos los departamentos que tienen


profesores que imparten alguna asignatura en el Grado en Ingeniería
Informática (Plan 2015).

SELECT departamento.nombre FROM departamento RIGHT JOIN profesor ON


departamento.Id_departamento = profesor.Id_departamento RIGHT JOIN
asignatura ON profesor.Id_profesor = asignatura.Id_profesor RIGHT
JOIN grado ON asignatura.Id_grado = grado.Id_grado WHERE grado.nombre
= 'Grado en Ingeniería Informática (Plan 2015)'
6. Devuelve un listado con todos los alumnos que se han matriculado en alguna
asignatura durante el curso escolar 2018/2019.

SELECT
persona.Id_alumno,persona.nif,persona.apellido1,persona.apellido2,p
ersona.nombre FROM persona RIGHT JOIN alumno_matricula_asignatura ON
persona.Id_alumno = alumno_matricula_asignatura.Id_alumno RIGHT JOIN
curso_escolar ON alumno_matricula_asignatura.Id_curso_escolar =
curso_escolar.Id_curso_escolar WHERE curso_escolar.anyo_inicio =
'2018' AND curso_escolar.anyo_fin = '2019'
1. Devuelve un listado con los nombres de todos los profesores y los
departamentos que tienen vinculados. El listado también debe mostrar
aquellos profesores que no tienen ningún departamento asociado. El listado
debe devolver cuatro columnas, nombre del departamento, primer apellido,
segundo apellido y nombre del profesor. El resultado estará ordenado
alfabéticamente de menor a mayor por el nombre del departamento, apellidos
y el nombre.

SELECT departamento.nombre, persona.apellido1, persona.apellido2,


persona.nombre FROM persona INNER JOIN profesor ON persona.Id_alumno
= profesor.Id_profesor LEFT JOIN departamento ON
profesor.Id_departamento = departamento.Id_departamento ORDER BY
departamento.nombre, persona.apellido1, persona.apellido2,
persona.nombre;
2. Devuelve un listado con los profesores que no están asociados a un
departamento.

SELECT
persona.Id_alumno,persona.apellido1,persona.apellido2,persona.nombr
e FROM persona RIGHT JOIN profesor ON persona.Id_alumno =
profesor.Id_profesor WHERE profesor.Id_departamento = null

3. Devuelve un listado con los departamentos que no tienen profesores


asociados.

SELECT * FROM departamento WHERE Id_departamento NOT IN ( SELECT


Id_departamento FROM profesor);
4. Devuelve un listado con los profesores que no imparten ninguna asignatura.

SELECT * FROM profesor INNER JOIN persona ON profesor.Id_profesor =


persona.Id_alumno WHERE profesor.id_profesor NOT IN ( SELECT
Id_profesor FROM asignatura WHERE Id_profesor IS NOT NULL);

5. Devuelve un listado con las asignaturas que no tienen un profesor asignado.

SELECT * FROM asignatura WHERE NOT EXISTS ( SELECT * FROM profesor


WHERE profesor.Id_profesor = asignatura.Id_profesor);
6. Devuelve un listado con todos los departamentos que tienen alguna
asignatura que no se haya impartido en ningún curso escolar. El resultado
debe mostrar el nombre del departamento y el nombre de la asignatura que
no se haya impartido nunca.

SELECT departamento.* FROM departamento INNER JOIN profesor ON


departamento.Id_departamento = profesor.Id_departamento WHERE NOT
EXISTS ( SELECT * FROM asignatura WHERE profesor.Id_profesor =
asignatura.Id_profesor);

También podría gustarte