8
Universidad Dominicana O&M Base de Datos Prof. Junior A. Mendez, MCP, MCSA, LIC Practica #7 1. Se tiene una base de datos de películas reflejada por las siguientes tablas Película (#tıtulo, #ano, duración, nombre_estudio) Estrella (#nombre, dirección, sexo, fecha_nacimiento) Estudio (#nombre, dirección) Protagoniza (#tıtulo_pelıcula, #ano_pelıcula, #nombre_estrella) Se pide realizar las siguientes consultas en SQL (Se supone que todos los datos necesarios se encuentran almacenados en las tablas): 1. Encontrar la dirección de los estudios MGM. SELECT NOMBRE, DIRECCION FROM ESTUDIO WHERE NOMBRE = 'MGM' 2. Encontrar todas las estrellas que participaron en películas realizadas en 2006 o en alguna película que contenga la palabra “Amor” en el título. SELECT ESTRELLA.NOMBRE FROM ESTRELLA, PELICULA WHERE PELICULA.ANO = 2006

P7LUISPINEDA

Embed Size (px)

Citation preview

Page 1: P7LUISPINEDA

Universidad Dominicana O&MBase de Datos

Prof. Junior A. Mendez, MCP, MCSA, LICPractica #7

1. Se tiene una base de datos de películas reflejada por las siguientes tablas

Película (#tıtulo, #ano, duración, nombre_estudio)Estrella (#nombre, dirección, sexo, fecha_nacimiento)Estudio (#nombre, dirección)Protagoniza (#tıtulo_pelıcula, #ano_pelıcula, #nombre_estrella)

Se pide realizar las siguientes consultas en SQL (Se supone que todos los datos necesarios se encuentran almacenados en las tablas):

1. Encontrar la dirección de los estudios MGM.SELECT NOMBRE, DIRECCIONFROM ESTUDIO WHERE NOMBRE = 'MGM'

2. Encontrar todas las estrellas que participaron en películas realizadas en 2006 o en alguna película que contenga la palabra “Amor” en el título.SELECT ESTRELLA.NOMBREFROM ESTRELLA, PELICULA WHERE PELICULA.ANO = 2006

3. ¿Quién fue la estrella masculina del “Hombre Araña 3”?SELECT ESTRELLA.NOMBREFROM ESTRELLA, PELICULA WHERE PELICULA.TITULO ='HOMBRE ARAÑA 3' AND ESTRELLA.SEXO = 'M'

4. ¿Qué películas tienen mayor duración que “Lo que el viento se llevo”?

Page 2: P7LUISPINEDA

5. Encontrar el título y la duración de todas las películas producidas por los estudios Disney en el año 1990, ordenando la salida por su duración?SELECT TITULO, DURACIONFROM PELICULA WHERE NOMBRE_ESTUDIO = 'DISNEY' AND ANO = 1990ORDER BY DURACION

6. Encontrar todas las estrellas que son hombres o viven en Malibú (tienen Malibú como parte de su dirección).SELECT NOMBREFROM ESTRELLA WHERE SEXO = 'M' AND DIRECCION LIKE '*MALIBU'

7. ¿Qué estrellas distintas aparecen en las películas producidas por la MGM en 2005? (Si una aparece varias veces mostrarla solo una vez).SELECT DISTINCT NOMBREFROM ESTRELLA, PELICULA WHERE PELICULA.NOMBRE_ESTUDIO = 'MGM' AND PELICULA.ANO = 2005

8. Encontrar la suma de la duración de todas las películas de cada estudio.SELECT NOMBRE_ESTUDIO, SUM(DURACION)AS 'TOTALTIEMPO'FROM PELICULAGROUP BY NOMBRE_ESTUDIO

2. Dada una base de datos de ordenadores e impresoras con las siguientes tablas

Producto (#fabricante, #modelo, tipo)PC (#modelo, velocidad, ram, hd, cd, precio)Impresora (#modelo, color, tipo, precio)

Realizar en SQL las siguientes consultas:

Page 3: P7LUISPINEDA

1. Encontrar el modelo, velocidad y tamaño de disco duro (hd) de todos los PC’s cuyo precio sea inferior a $1600.

SELECT MODELO, VELOCIDAD, HDFROM PCWHERE PRECIO < 1600

2. Repetir la consulta de (a), pero cambiando el nombre a las columnas velocidad como Megaherzios y hd como Gigabytes.

SELECT MODELO, VELOCIDAD AS 'MEGAHERZIOS', HD AS 'GIGABYTES'FROM PCWHERE PRECIO < 1600

3. Encontrar todas las filas de la tabla de Impresoras que son en color. El valor de la columna color es booleano con los valores ’V’ y ’F’.

4. Encontrar la velocidad media de los PC’s.

SELECT AVG(VELOCIDAD) AS 'VELOCIDAD MEDIA'FROM PC

5. Decir los fabricantes y la velocidad de los PC’s con disco duro de tamaño mayor o igual a 1 Gigabyte.SELECT P.FABRICANTE, PC.MODELOFROM PRODUCTO P, PCWHERE HD >= 1

6. Encontrar los fabricantes de los PC’s con velocidad superior a 160 MHz.SELECT P.FABRICANTE, PC.MODELOFROM PRODUCTO P, PCWHERE VELOCIDAD > 160

Page 4: P7LUISPINEDA

3. Dadas las siguientes tablas, dar una expresión SQL para cada una de las siguientes consultas:

Vive (#nombre, calle, ciudad)Trabaja (#nombre, #compania, salario)Situada (#compania, ciudad)Dirige (#nombre, #nombre_director)

1. Encontrar el nombre y la ciudad de todos los empleados que trabajan en Plaza LamaSELECT V.NOMBRE, V.CIUDADFROM VIVE V, TRABAJA TWHERE T.COMPAÑIA = 'PLAZA LAMA'

2. Encontrar todos los empleados que viven en la misma ciudad que la compañía en la que trabajan.SELECT V.NOMBREFROM VIVE V, TRABAJA T, SITUADA SWHERE S.CIUDAD = V.CIUDAD

3. Encontrar el salario y la compañía de todos los directores.SELECT T.COMPAÑIA, T. SALARIOFROM TRABAJA T, DIRIGE DWHERE T.NOMBRE = D.NOMBRE_DIRECTOR

4. Encontrar a todos los empleados que viven en la misma ciudad y en la misma calle que su director.

4. Dadas las siguientes tablas relacionales:

Cigarrillo (#marca, #filtro, nombre_fabricante, precio)Estanco (#CI, nombre, direccion)Fabricante (#nombre, pais)Compras (#CI, #marca, #filtro, ano, cantidad, precio)Ventas (#CI, #marca, #filtro, ano, cantidad, precio)

Plantear las siguientes preguntas utilizando SQL:

Page 5: P7LUISPINEDA

1. Obtener todas las marcas de cigarrillos extranjeros.SELECT C.MARCAFROM CIGARRILLO C, FABRICANTE FWHERE NOT PAIS LIKE 'REPUBLICA DOMINICANA'

2. Obtener el total de compras de cigarrillos con filtro (filtro = ’S’) realizadas por marca.

SELECT SUM(PRECIO)AS 'TOTAL DE COMPRAS'FROM COMPRAS WHERE FILTRO ='S'GROUP BY MARCA

3. Obtener una relación completa de todas las compras y ventas realizadas.

5. Dadas las siguientes tablas relacionales:

Persona (#Cedula, nombre, apellidos, calle, numero,Cod_sector, planta, puerta, metros)Piso (#calle, #numero, #Sector, #planta)Sector (#codigo, nombre)

Plantear las siguientes preguntas utilizando SQL:

1. Obtener Cedula de todos los propietarios de una casa en la zona Colonial con el numero 222.SELECT CEDULAFROM PERSONAWHERE NUMERO = 222

2. Obtener cedula, nombre y apellidos de los propietarios de un piso en la calle Independencia, numero 2021.

SELECT CEDULA, NOMBRE, APELLIDOSFROM PERSONA

Page 6: P7LUISPINEDA

WHERE CALLE = 'INDEPENDENCIA'AND NUMERO = 2021

3. Obtener todos los pisos de más de 50m2 cuyo propietario tiene la cedula 001-0000142-1SELECT P.NUMEROFROM PISO P, PERSONA WHERE PERSONA.METROS > 50AND PERSONA.NUMERO = '001-0000142-1'

4. Obtener el número de personas que viven en la “Av. Bolívar”.SELECT NUMEROFROM PERSONA WHERE CALLE = 'AV. BOLIVAR'

5. Obtener el número de personas que viven en el Sector “La feria”.SELECT P.NUMEROFROM PERSONA P, SECTOR SWHERE S.NOMBRE = 'LA FERIA'

LUIS MARIANO PINEDA MERAN08-EISM-1-055

Nota: Analizar las estructuras de cada tabla y seleccionar los tipos datos más recomendados para cada campo o

atributo, si necesitas introducir datos lo pueden realizar.