Está en la página 1de 2

-- 1) Mostrar el nombre de todas las películas.

SELECT nombre FROM peliculas;

-- 2) Mostrar las distintas calificaciones de edad que existen.


SELECT DISTINCT calificacion_edad FROM peliculas;

-- 3) Mostrar todas las películas que no han sido calificadas.


SELECT * FROM peliculas
WHERE calificacion_edad IS NULL;

-- 4) Mostrar todas las salas que no proyectan ninguna película.


SELECT * FROM salas
WHERE id_pelicula IS NULL;

/* 5) Mostrar la información de todas las salas y, si se proyecta alguna película en la


sala, mostrar también
la información de la película. */
SELECT * FROM salas as s
LEFT JOIN peliculas as p ON s.id_pelicula = p.id_pelicula;

/* 6) Mostrar la información de todas las películas y, si se proyecta en alguna sala,


mostrar
también la información de la sala. */
/*Con RIGHT JOIN*/
SELECT * FROM salas as s
RIGHT JOIN peliculas as p ON s.id_pelicula = p.id_pelicula;

/*Con LEFT JOIN*/


SELECT * FROM peliculas as p
LEFT JOIN salas as s ON p.id_pelicula = s.id_pelicula;

-- 7) Mostrar los nombres de las películas que no se proyectan en ninguna sala.


/* Con RIGHT JOIN */
SELECT p.nombre FROM salas as s
RIGHT JOIN peliculas as p ON s.id_pelicula = p.id_pelicula
WHERE s.id_pelicula IS NULL;

/* Con Subconsulta */
SELECT nombre FROM peliculas
WHERE id_pelicula NOT IN
(SELECT id_pelicula FROM salas
WHERE id_pelicula IS NOT NULL);

-- 8) Añadir una nueva película ‘El Padrino’, para mayores de 16 (+16).


INSERT INTO peliculas (nombre, calificacion_edad)
VALUES('El Padrino',"+16");

-- 9) Calificar todas las películas no calificadas, con una calificación de edad para
mayores de 13 ('+13').
UPDATE peliculas SET calificacion_edad="+13"
WHERE calificacion_edad IS NULL;

-- 10) Eliminar todas las salas que proyectan películas recomendadas aptas para todo
publico (ATP)
DELETE FROM salas WHERE id_pelicula IN
(SELECT id_pelicula FROM peliculas
WHERE calificacion_edad = "ATP");

-- Aclaracion sobre la variable SQL_SAFE_UPDATES de MySQL


/* Un variable de sistema muy conocida dentro de los programadores de SQL es
SQL_SAFE_UPDATES, que sirve para poder
actualizar los datos en la base datos.
Para ello, utilizaremos el comando SET para modificar su valor booleano. Cuando la
variable tiene el valor 1,
el sistema no nos dejará modificar valores en la base de datos. Por eso mismo, cada vez
que queremos modificar
la base de datos debes asignar el valor asignado debe ser 0 en esta variable en MySQL
*/
set sql_safe_updates = 0;
select @@sql_safe_updates;

También podría gustarte