Control 6
Jorge Olgun Leiva
Fundamentos de Bases de Datos
Instituto IACC
14-10-2017
Se tienen las siguientes tablas que registran para una librera los datos de los libros, as como los datos de
la editorial y autor.
Segn los datos anteriormente mostrados, entregue las siguientes consultas, incluyendo las subconsultas
en la clusula que considere adecuada:
1. Liste el cdigo del autor, nombre y la cantidad de libros que tiene en el registro de la librera.
2. Liste el cdigo de la editorial, nombre y la cantidad de libros que tiene en el registro de la
librera.
3. Liste el cdigo de autor, cdigo de libro, nombre, cdigo de editorial y precio de aquellos libros
que tengan un porcentaje de descuento igual o mayor al 15%.
4. Liste el cdigo de autor, cdigo de libro, nombre, cdigo de editorial y precio de aquellos libros
que tengan un porcentaje de descuento menor al 20%.
5. Liste el cdigo de autor, y la suma de los precios de los libros que le pertenecen.
6. Liste el cdigo de autor, y la suma de los precios de los libros que le pertenecen, mostrando solo
aquellos donde la suma de sus precios sea menor a 40.000 pesos.
Desarrollo
Primero aclararemos que las tablas sern LIBROS, EDITORIAL y AUTOR-
1- Al listar el cdigo del autor y nombre que estn en la tabla AUTOR y adems listar la
cantidad de libros que tiene el autor en el registro de la librera que est en la tabla
LIBROS, sera como sigue:
Select CODIGO_AUTOR, NOMBRE, (Select Count (CODIGO_LIBRO) From
LIBROS Where AUTOR.CODIGO_AUTOR = LIBROS.CODIGO_AUTOR) From
AUTOR;
Resultado:
Muestra la columna CODIGO_AUTOR y NOMBRE del autor de la tabla AUTOR y la
columna Cantidad de Libros del Autor procedente de la tabla LIBROS.
2- Para listar el cdigo de la editorial y nombre de la tabla EDITORIAL y adems la
cantidad de libros que tiene el autor en el registro de la librera seria como sigue:
Select CODIGO_EDITORIAL, NOMBRE, (Select Count (CODIGO_LIBRO) From
LIBROS Where AUTOR.CODIGO_AUTOR = LIBROS.CODIGO_AUTOR) From
EDITORIAL;
Resultado:
Muestra la columna CODIGO_EDITORIAL y NOMBRE de la Editorial de la tabla
EDITORIAL y la columna Cantidad de Libros del Autor procedente de la tabla LIBROS.
3- Para listar el cdigo del autor, cdigo del libro, nombre, cdigo de editorial y precio que
se encuentran en la tabla LIBROS, pero que adems tengan un descuento igual o mayor a
15%, sera como sigue:
Select CODIGO_AUTOR, CODIGO_LIBRO, NOMBRE, CODIGO_EDITORIAL,
PRECIO From LIBROS Where PORC_DESCUENTO >= 15;
Resultado:
Muestra todas las columnas de la tabla LIBROS pero solo los registros mayores o igual a
15% de descuento.
4- Para listar el cdigo de autor, cdigo de editorial, cdigo de libro, nombre y precios de
aquellos que tengan un porcentaje de descuento menor a 20% de la tabla LIBROS, es
como sigue.
Select CODIGO_AUTOR, CODIGO_EDITORIAL, CODIGO_LIBRO, NOMBRE,
PRECIO From LIBROS Where PORC_DESCUENTO <20;
Resultado:
Muestra todas las columnas de la tabla LIBROS pero solo los registros menor a 20% de
descuento.
5- Listar el cdigo del autor y la suma de los precios de sus libros.
Select LIBROS.CODIGO_AUTOR, Sum(PRECIOS) From Libros Group By
NOMBRE;
Resultado:
Muestra de la tabla LIBROS, la sumatoria de precios de cada CODIGO_AUTOR
6- Listar el cdigo del autor y la suma de los precios de los libros que le pertenecen y que su
precio sea menor a 40.000 pesos.
Select LIBROS.CODIGO_AUTOR, Sum(PRECIOS) From Libros Group By
NOMBRE Having (PRECIO) < 40000;
Resultado:
Muestra de la tabla LIBROS, la sumatoria de precios de cada CODIGO_AUTOR menor
a 40.000.
Bibliografa
1.- http://blog.nnatali.com/2010/01/07/sentencias-mysql-campos-de-varias-tablas-en-la-misma-query/
2.- https://www.youtube.com/watch?v=hlTlhKxo4Ek
3.- http://m.sql.11sql.com/sql-funcion-having.htm
4.- Material entregado