0% encontró este documento útil (0 votos)
267 vistas4 páginas

Nombre y Apellidos Del Autor Que Mas Libros Ha Vendido

Este documento contiene una serie de consultas SQL a una base de datos de ventas de libros. Las consultas identifican al autor con más ventas, las ventas totales por mes, el libro más vendido cada mes, información sobre libros con 3 o más autores, ventas de libros el 4 de febrero de 1999, información sobre libros de la categoría "Access", el mes con mayores ventas en euros, ventas de libros de un solo autor en junio de 1999, y la creación de una tabla con libros de categoría "Visual Basic" con un prefijo "VB" añ

Cargado por

pichatronik
Derechos de autor
© Attribution Non-Commercial (BY-NC)
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOC, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
267 vistas4 páginas

Nombre y Apellidos Del Autor Que Mas Libros Ha Vendido

Este documento contiene una serie de consultas SQL a una base de datos de ventas de libros. Las consultas identifican al autor con más ventas, las ventas totales por mes, el libro más vendido cada mes, información sobre libros con 3 o más autores, ventas de libros el 4 de febrero de 1999, información sobre libros de la categoría "Access", el mes con mayores ventas en euros, ventas de libros de un solo autor en junio de 1999, y la creación de una tabla con libros de categoría "Visual Basic" con un prefijo "VB" añ

Cargado por

pichatronik
Derechos de autor
© Attribution Non-Commercial (BY-NC)
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOC, PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 4

Nombre y apellidos del autor que mas libros ha vendido

SELECT tblAutorLibro.IDAutor, SUM( tblDetallesPedido.Cantidad) AS CANTIDAD


FROM tblDetallesPedido INNER JOIN tblAutorLibro ON
tblDetallesPedido.NúmeroISBN = tblAutorLibro.NúmeroISBN
GROUP BY tblAutorLibro.IDAutor;

SELECT TOP 1 tblAutores.Nombre, tblAutores.Apellidos, EX1_1.CANTIDAD


FROM EX1_1 INNER JOIN tblAutores ON EX1_1.IDAutor = tblAutores.IDAutor
ORDER BY EX1_1.CANTIDAD DESC;

Total de los libros vendidos en cada mes

SELECT SUM(tblDetallesPedido.Cantidad), month( tblPedidos.FechaPedido)


FROM tblPedidos INNER JOIN tblDetallesPedido ON tblPedidos.IDPedido =
tblDetallesPedido.IDPedido
GROUP BY month( tblPedidos.FechaPedido);

De cada mes titulo del libro mas vendido

SELECT month(tblPedidos.FechaPedido) AS MES, tblpedidos.idpedido


FROM tblPedidos;

SELECT EX3_1.MES, Sum(tblDetallesPedido.Cantidad) AS SumaDeCantidad,


tblDetallesPedido.NúmeroISBN
FROM EX3_1 INNER JOIN tblDetallesPedido ON EX3_1.idpedido =
tblDetallesPedido.IDPedido
GROUP BY EX3_1.MES, tblDetallesPedido.NúmeroISBN
ORDER BY Sum(tblDetallesPedido.Cantidad) DESC;

SELECT MAX(EX3_2.SumaDeCantidad) AS CANTMAXMES, EX3_2.MES


FROM EX3_2
GROUP BY EX3_2.MES;

SELECT tblLibros.Título, EX3_3.CANTMAXMES, EX3_3.MES


FROM EX3_3 INNER JOIN (EX3_2 INNER JOIN tblLibros ON EX3_2.NúmeroISBN
= tblLibros.NúmeroISBN) ON EX3_3.MES = EX3_2.MES
WHERE EX3_2.sumadecantidad=cantmaxmes;

De los libros escritos por 3 o mas autores se quiere el titulo de estos libros y el
nombre de sus autores

SELECT count(tblAutorLibro.IDAutor) AS Nautores, tblAutorLibro.NúmeroISBN


FROM tblAutorLibro
GROUP BY tblAutorLibro.NúmeroISBN
HAVING count(tblAutorLibro.IDAutor)>=3;
SELECT EX4_1.NúmeroISBN, tblLibros.Título, tblAutores.Nombre
FROM (EX4_1 INNER JOIN tblLibros ON EX4_1.NúmeroISBN =
tblLibros.NúmeroISBN) INNER JOIN (tblAutores INNER JOIN tblAutorLibro ON
tblAutores.IDAutor = tblAutorLibro.IDAutor) ON tblLibros.NúmeroISBN =
tblAutorLibro.NúmeroISBN;

De los libros escritos por 3 o ams autores se quiere el titulo de estos libros y
canditadad de libros vendidos de cada uno de ellos en el mes de junio de 99

SELECT tblLibros.Título, Sum(tblDetallesPedido.Cantidad) AS SumaDeCantidad,


Month([FechaPedido]) AS MES
FROM tblPedidos INNER JOIN ((EX4_1 INNER JOIN tblLibros ON
EX4_1.NúmeroISBN = tblLibros.NúmeroISBN) INNER JOIN tblDetallesPedido ON
tblLibros.NúmeroISBN = tblDetallesPedido.NúmeroISBN) ON tblPedidos.IDPedido =
tblDetallesPedido.IDPedido
GROUP BY tblLibros.Título, Month([FechaPedido])
HAVING (((Month([FechaPedido]))=6));

Crea una copia de la tabla tblautores con el nombre tblcopiaautores

Select tblautores.* into tblcopiautores from tblautores

En esta tabla copiada insertar un registro con tus datos

Insert into tblcopiautores (nombre,inicialnombre,apellidos,dircorreoelectronico) values


(‘alvaro’,’A’,’se’,’[email protected]’)

A todos los autores en la copia, le pones como apellidos ‘garcia perez’ excepto el
tuyo

Update tblcopiaautores set apellidos=’sanchez peres’ where idautor<>46

Titulo de los libros escritos por un solo autor y el nombre de sus autores

SELECT tblAutorLibro.NúmeroISBN, count(tblAutorLibro.IDAutor) AS SumaID


FROM tblAutorLibro
GROUP BY NúmeroISBN
HAVING count(tblAutorLibro.IDAutor)=1;

SELECT tblLibros.Título, tblAutores.Nombre


FROM (Consulta1_1 INNER JOIN tblLibros ON [Consulta1_1].NúmeroISBN =
tblLibros.NúmeroISBN) INNER JOIN (tblAutores INNER JOIN tblAutorLibro ON
tblAutores.IDAutor = tblAutorLibro.IDAutor) ON [Consulta1_1].NúmeroISBN =
tblAutorLibro.NúmeroISBN;
Consulta que obtenga el titulo y el número de libros de los vendidos el DIA 4
febrero99 ordenados de mayor a menor número de libros

SELECT tblPedidos.IDPedido, tblPedidos.FechaPedido


FROM tblPedidos
WHERE tblPedidos.FechaPedido=#2/4/99#;

SELECT tblDetallesPedido.NúmeroISBN, SUM( tblDetallesPedido.Cantidad) AS


NumLibros
FROM tblDetallesPedido INNER JOIN Consulta2_1 ON tblDetallesPedido.IDPedido =
Consulta2_1.IDPedido
GROUP BY tblDetallesPedido.NúmeroISBN;

SELECT tblLibros.Título, Consulta2_2.NumLibros


FROM Consulta2_2 INNER JOIN tblLibros ON Consulta2_2.NúmeroISBN =
tblLibros.NúmeroISBN
ORDER BY Consulta2_2.NumLibros DESC

De los libros catalogados como ACCESS visualizar sus títulos y el número de


ejemplares vendidos en todo el periodo de tiempo registrado en la BD ordenados
de mayor a menor número de ejemplares

SELECT tblCategoríasLibro.NúmeroISBN
FROM tblCategoríasLibro
WHERE tblCategoríasLibro.IDCategoría=4;

SELECT Consulta3_1.NúmeroISBN, SUM(tblDetallesPedido.Cantidad) AS Cantidad


FROM Consulta3_1 INNER JOIN tblDetallesPedido ON Consulta3_1.NúmeroISBN =
tblDetallesPedido.NúmeroISBN
GROUP BY Consulta3_1.NúmeroISBN;

SELECT tblLibros.Título, Consulta3_2.Cantidad


FROM Consulta3_2 INNER JOIN tblLibros ON Consulta3_2.NúmeroISBN =
tblLibros.NúmeroISBN
ORDER BY Consulta3_2.Cantidad DESC;

Mes de mas ventas en €

SELECT Sum(tblLibros.PrecioSug*tblDetallesPedido.Cantidad) AS TOTAL,


tblDetallesPedido.IDPedido
FROM tblLibros INNER JOIN tblDetallesPedido ON tblLibros.NúmeroISBN =
tblDetallesPedido.NúmeroISBN
GROUP BY tblDetallesPedido.IDPedido;

SELECT TOP 1 SUM(Consulta5_1.TOTAL) AS CANTIDAD,


month( tblPedidos.FechaPedido)
FROM Consulta5_1 INNER JOIN tblPedidos ON Consulta5_1.IDPedido =
tblPedidos.IDPedido
GROUP BY month( tblPedidos.FechaPedido)
ORDER BY SUM(Consulta5_1.TOTAL) DESC;
De los libros escritos por un solo autor se quiere el titulo de estos libros y la
cantidad de libros vendidos cada uno de estos libros en el mes de junio del 99

SELECT tblAutorLibro.NúmeroISBN, Count(tblAutorLibro.IDAutor) AS NLibros,


tblLibros.Título
FROM tblLibros INNER JOIN tblAutorLibro ON tblLibros.NúmeroISBN =
tblAutorLibro.NúmeroISBN
GROUP BY tblAutorLibro.NúmeroISBN, tblLibros.Título
HAVING (((Count(tblAutorLibro.IDAutor))=1));

SELECT tblPedidos.IDPedido, tblPedidos.FechaPedido


FROM tblPedidos
WHERE tblPedidos.FechaPedido BETWEEN #6/1/99# AND #6/30/99#;

SELECT tblDetallesPedido.NúmeroISBN, sum( tblDetallesPedido.Cantidad) AS


Cantidad
FROM tblDetallesPedido INNER JOIN Consulta6_2 ON tblDetallesPedido.IDPedido =
Consulta6_2.IDPedido
GROUP BY tblDetallesPedido.NúmeroISBN;

SELECT Consulta6_1.Título, Consulta6_3.Cantidad


FROM Consulta6_3 INNER JOIN Consulta6_1 ON Consulta6_3.NúmeroISBN =
Consulta6_1.NúmeroISBN;

Crea una tabla llamada tblvisualbasic con los mismos capos que tbllibros y que
contenga todos los libros catalogados como visualbasic

SELECT tblLibros.* INTO tblvisualbasic


FROM tblLibros INNER JOIN tblCategoríasLibro ON tblLibros.NúmeroISBN =
tblCategoríasLibro.NúmeroISBN
WHERE (((tblCategoríasLibro.IDCategoría)=8));

A todos los libros de visualbasic se le modifique el titulo para que contengan el


prefijo VB

UPDATE tblvisualbasic SET Título = 'VB'&Título;

También podría gustarte