Más consultas simples (funciones)

Anuncio
BASE DE DATOS: ALQUILER DE PELICULAS
CONSULTAS SIMPLES (IN / BETWEEN / LIKE / ORDER BY / funciones )
1.- Nombre y año de todas las películas con duración superior a 120 min.
select nombre, año from Pelicula
where duracion > 120;
2.- Añadir una nueva dirección: Gran Vía, 72, Madrid. España.
insert into dirección values (6, 'Gran Vía, 72', 'Madrid', 'España');
3.- Listado de todas las películas (nombre) que duren menos de 130 minutos o bien sean
anteriores a 1990.
select nombre from pelicula where duracion<130 or año< 199
04.- Nombre y apellido de los clientes nacidos en el año 1947.
select nombre, apellido from cliente
where Fech_Nac>='19470101' and Fech_Nac<='19471231';
5.- Indicar que la película 3 ha dejado de estar disponible.
update inventario set disponible= 0 where pelicula=3;
6.- Listado de todos los clientes cuyo apellido no sea ‘Pesto’.
select * from cliente where apellido <> 'Pesto';
7.- Mostrar una relación de los clientes cuyo nombre sea ‘María’ o bien tengan por apellido
‘Arnal’ y con dirección indicada como dirección 1.
select * from cliente where
nombre='Maria' or (apellido='Arnal' and direccion=1);
8.- Lista los distintos países que aparecen en las direcciones.
select distinct pais from direccion;
9.- Muestra los registros de los clientes cuyo apellido sea Aliaga, Arnal o Martín.
select * from cliente where apellido in ('Aliaga', 'Arnal','Martín');
10.- ¿Qué identificadores corresponden a las categorías ‘musical’ y ‘clásica’.
select * from cliente where apellido in ('Aliaga', 'Arnal','Martín');
10. ¿Qué identificadores corresponden a las categoría ‘musical ‘ y ‘clásica’?
SELECT id_categoria
FROM categoria
WHERE nombre IN ('musical', 'clasica');
11.- La fecha de Teresa Aliaga es errónea. Su valor correcto es: 01/06/1947
update cliente set fech_nac='1947/06/01' where nombre='Teresa';
12.- Borra la categoría que hace referencia a las películas clasificadas como ‘comedia’.
delete from categoria where nombre='comedia';
13.- Muestra toda la información de los alquileres efectuados entre el 15 de abril y el 15 de
junio.
select * from alquiler where fech_alquiler between '20030415' and '20031515';
14.- Nombre de las películas que duran menos de 120 minutos y sean del año 1980 ó 1990.
select nombre from pelicula where duracion=120 and (año=1980 or año=1990);
15.- Listar todas las direcciones de las ciudades que comiencen por ‘M’.
select direccion from direccion where ciudad like 'M%';
16.- Muestra los nombres y fechas de nacimiento de aquellos clientes cuyo apellido tenga la
secuencia ‘ar’.
select nombre, fech_nac from cliente where apellido like '%ar%';
17.- Indicar el nombre y la duración de las películas cuyo nombre finalice en ‘s’.
select nombre , duracion from pelicula where nombre like '%s';
18.- Dar un listado de todas la categorías cuyo nombre empiece por ‘m’ o finalicen con la
secuencia ‘-día’.
select * from categoria where nombre like 'm%';
19.- Indica todos los clientes (nombre y apellido) cuyo apellido comience por ‘H’.
select nombre, apellido from cliente where apellido like 'H%';
20.- Indica todos los clientes (nombre y apellido) cuyo nombre contenga la letra ‘d’.
select nombre, apellido from cliente where nombre like '%d%';
21.- Lista a todos los clientes ordenados ascendentemente por su apellido y
descendentemente por su nombre.
select * from cliente order by apellido asc, nombre desc;
22.- ¿Cuál es la duración media de todas las películas?
select avg(duracion) from pelicula;
23.- ¿Cuántos clientes hay?
select count(*) from cliente;
24.- Muestra el nombre y el apellido del cliente más joven.
select nombre, apellido from cliente where fech_nac = (select max(fech_nac)from cliente);
25. - ¿Cuántas categorías de películas hay que comiencen por ‘M’.
select count(*) from categoria where nombre like 'm%';
26.- ¿Cuántas películas son del año 2000?
select count(*) from pelicula where año=2000;
27.- ¿Cuántas películas se alquilaron en el mes de junio de 2003?
select count(*) from alquiler where fech_alquiler between '20030601' and '20030615';
28.- ¿Qué películas están disponibles? Indica solo su código.
select id_pelicula
from pelicula
where id_pelicula in (select pelicula from inventario
where disponible=1); //La disponibilidad de 5 se cambio en los ejercicios
anteriores y pasó a ser 1.
29.- ¿Cuál es nombre y la duración de la película más antigua?
select nombre, duracion
from pelicula
where año = (select max(año)
from pelicula);
30.- ¿Cuántos clientes tiene el apellido Martín?
select count(*) as total_clientes_apellido_m
from cliente
where apellido ='Martín';
Descargar