Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
de Base de
Datos
Proyecto Base de Datos (VIDEOCLUB)
Integrantes:
Francisco Ricardo Garza Aguilera
Gilberto Francisco Blfeda Posada
INDICE
Descripcin Videoclub .
Definicin DDL y DML ...
Modelo Entidad-Relacin ..
Tablas ...
3
4
6
7
Algebra Relacional
Seleccin
Proyeccin ...
Reunin ..
8
9
9
Consultas SQL
5 preguntas abiertas ...
5 preguntas abiertas con clusula where
5 preguntas abiertas con clusula order by ..
3 preguntas abiertas con clusula group by .
3 preguntas abiertas con clusula having ..
3 preguntas abiertas con todo .
3 preguntas que relacionen 3 tablas o ms .
3 preguntas que relacionen 3 tablas y empleen todo
11
16
21
26
29
32
35
38
2
Descripcin de Videoclub
En esta base de datos manejamos 5 tablas: clientes, pelculas, alquileres, empleados y proveedores;
en estas tablas todos tienen un identificador nico en donde la tabla de clientes tiene un ID_CLIENTE
donde nos sirve para identificar nuestro cliente as como los alquileres que ha realizado desde la
tabla Alquileres, en esta tenemos los ID de todas las tablas en donde se lleva el control de la renta de
pelculas
CLIENTE almacena los datos de cada uno de los clientes del vdeo club: ID_CLIENTES,
NOMBRE_CLIENTE, CIUDAD_CLIENTE y TELEFONO_CLIENTE.
PELICULA almacena informacin sobre cada una de las pelculas de las cuales tiene: ID_PELICULA,
TITULO, GENERO, ID_PROVEEDOR.
ALQUILER almacena informacin de los prstamos que se han realizado.
EMPLEADO almacena informacin de los empleados que trabajan en el Videoclub.
PROVEEDORES almacena informacin de cada uno de los proveedores de nuestras pelculas.
DDL y DML
Lenguaje de definicin de datos (DDL: Data Definition Language): Sencillo lenguaje artificial para
definir y describir los objetos de la base de datos, su estructura, relaciones y restricciones. En la
prctica puede consistir en un subconjunto de instrucciones de otro lenguaje informtico. Aparte
suele poseer dos subconjuntos de instrucciones:
Lenguaje de definicin del almacenamiento de los datos (DSDL: Data Storage Definition
Language): permite especificar caractersticas fsicas de la base de datos (volmenes y
archivos donde van a ser almacenados los datos, etc).
Lenguaje de control de datos (DCL: Data Control Language): encargado del control y
seguridad de los datos (privilegios y modos de acceso, etc).
Descripcin
Utilizado para crear nuevas tablas, stored procedures e
ndices
DROP
ALTER
Comandos DML
Comando
Descripcin
SELECT
INSERT
DELETE
UPDATE
Modelo Entidad-Relacin.
Tablas
Algebra Relacional
Las relaciones base que forman las base de datos de un videoclub son las siguientes:
Clientes (ID_CLIENTE,NOMBRE_CLIENTE,CIUDAD_CLIENTE,TELEFONO_CLIENTE)
Pelculas (ID_PELICULA,TITULO,GENERO,ID_PROVEEDOR)
Alquileres (ID_ALQUILER,ID_CLIENTE,ID_PELICULA,FECHA_RETIRO,FECHA_ENTREGA,ID_EMPLEADO)
Empleado (ID_Empleado,Nombre,Apellidos,Telefono)
Proveedores (ID_Proveedor,Nomb_Empresa,Num_Peliculas,Telefono,E-mail)
Seleccin
Buscar pelcula de Genero de Accion y de Nombre Guerra Mundial Z
(Genero=Accion AND TITULO=Guerra Mundial Z (Peliculas))
Buscar todas las pelculas de Ciencia Ficcin
Genero=Ciencia Ficcion (Peliculas)
Buscar quien rento la pelcula de X-Men
ID_CLIENTE, NOMBRE_CLIENTE ( TITULO=X-Men)(Clientes Peliculas)
Buscar el titulo de las pelculas de Accion
TITULO ( Genero=Accion(Peliculas))
Buscar todos los clientes de Cd. Victoria
NOMBRE_CLIENTE ( CIUDAD_CLIENTE=Victoria(Clientes))
Proyeccin
Obtener los nombres de los clientes que tienen actualmente prestada una pelcula
ID_CLIENTE,NOMBRE_CLIENTE (Clientes)
Obtener el nombre de las pelculas de genero Accion
ID_PELICULA, TITULO ( GENERO=Accion(Peliculas))
Obtener el nombre de todos los proveedores de pelculas
ID_PROVEEDOR,NOMB_Empresa (Proveedores)
Obtener todos los nombres de los Empleados
ID_Empleado,Nombre (Empleado)
Obtener todas las pelculas del VideoClub
ID_PELICULA,TITULO (Peliculas)
Reunin
Obtener Clientes y su fecha de entrega
ID_CLIENTE,NOMBRE_CLIENTE,ID_PELICULA,FECHA_ENTREGA(Clientes Alquileres)
Obtener clientes que rentaron la pelcula con el ID 123453
ID_CLIENTE,NOMBRE_CLIENTE ( ID_PELICULA=123453 (Clientes Alquileres))
Obtener el nombre del empleado que atendi a Francisco Garca
ID_Empleado,Nombre ( ID_CLIENTE=Francisco Garca (Empleado Alquileres) )
Obtener los Nombres de los Proveedores de cada Pelcula
ID_Pelicula,TITULO,ID_Proveedor,Nomb_Empresa (Peliculas Proveedores)
ID_CLIENTE,NOMBRE_CLIENTE,TELEFONO_CLIENTE,ID_PELICULA,TITULO,GENERO,ID_ALQUILER,
FECHA_ENTREGA,ID_Empleado,Nombre,ID_Proveedor,Nombre_Empresa (T4)
10
5 preguntas abiertas.
1.-Obtener el nombre de los clientes de la tabla clientes
Select Nombre_Cliente
From Clientes
11
12
13
14
5.- De la tabla alquileres agrupar los empleados que atendieron mas de una
ves
Select count(id_empleado)Total
From Alquileres
Group by id_empleado
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
21.-De la tabla clientes obtener los clientes que son de una misma ciudad
pero que sean mas de 2
Select Ciudad_Cliente, count(Ciudad_cliente)Total
From Clientes
Group by Ciudad_Cliente
Having (count(ciudad_cliente)>2)
31
32
33
34
35
36
27.-Obtener el nombre del cliente que rento la pelcula con id 123453, el titulo
de dicha pelcula y el proveedor que suministro esta pelcula.
Select C.NOMBRE_CLIENTE, j.ID_PELICULA,e.TITULO,D.Nomb_Empresa
From ALQUILERES J inner join PELICULAS E
on J.ID_PELICULA = E.ID_PELICULA
inner join PROVEDORES d on d.ID_Proveedor=E.ID_PROVEEDOR
inner join Clientes C on J.ID_CLIENTE=c.ID_CLIENTE
where j.ID_PELICULA=123453
37
order by e.TITULO;
38
29.- obtener los clientes que alquilaron el genero romantica y los nombres de
los proveedores que tienen el genero de romntica
Select C.NOMBRE_CLIENTE,e.TITULO,e.GENERO,d.Nomb_Empresa
From ALQUILERES J inner join PELICULAS E
on J.ID_PELICULA = E.ID_PELICULA
inner join PROVEDORES d on d.ID_Proveedor=E.ID_PROVEEDOR
inner join Clientes C on J.ID_CLIENTE=c.ID_CLIENTE
Inner join Empleados K on J.ID_EMPLEADO=K.ID_Empleado
group by C.NOMBRE_CLIENTE, e.TITULO,e.GENERO,d.Nomb_Empresa
having e.GENERO='Romantica'
order by e.TITULO;
39
40