EXAMEN FINAL / BASE DE DATOS
Juan Elías Rodríguez Reyes
1. Obtener los nombres de los productos de la tienda.
SELECT nombre FROM ARTICULOS
2. Obtener los nombres y los precios de los productos de la tienda.
SELECT Nombre, Precio FROM ARTICULOS
3. Obtener el nombre de los productos cuyo precio sea menor o igual a 200
SELECT nombre FROM ARTICULOS WHERE Precio > 200
4. Obtener todos los datos de los artículos cuyo precio están entre los $60 y $120 (dos
formas para resolver)
SELECT * FROM ARTICULOS WHERE Precio >=60 AND Precio <= 120
SELECT * FROM ARTICULOS WHERE Precio BETWEEN 60 AND 120
5. Obtener el nombre y el precio en dólares (es decir, el precio en pesos multiplicado
por $50.45)
SELECT Nombre, Precio*50.45 FROM ARTICULOS
6. Seleccionar el precio medio de todos los productos.
SELECT AVG(Precio) FROM ARTICULOS
7. Obtener el precio medio de los artículos cuyo código de fabricante sea 2
SELECT AVG(Precio) FROM ARTICULOS WHERE CodigoF = 2
8. Obtener el número de artículos cuyo precio sea mayor o igual a 180
SELECT COUNT(*) FROM ARTICULOS WHERE Precio >=180
9. Obtener el nombre y precio de los artículos cuyo precio sea mayor o igual a 180 y
ordenarlos descendentemente por precio, y luego ascendentemente por nombre.
SELECT Nombre, Precio FROM ARTICULOS WHERE Precio >=180 ORDER
BY Precio DESC, Nombre
10. Obtener un listado completo de artículos, incluyendo por cada artículo los datos del
artículo y de su fabricante.
SELECT * FROM ARTICULOS, FABRICANTES
WHERE ARTICULO.CodigoF = FABRICANTES.CodigoF
11. Obtener un listado de artículos, incluyendo el nombre del artículo, su precio, y el
nombre de su fabricante.
SELECT ARTICULOS.Nombre, Precio, FABRICANTES.Nombre
FROM ARTICULOS, FABRICANTES
WHERE ARTICULOS.CodigoF = FABRICANTES.CodigoF
12. Obtener el precio medio de los productos de cada fabricante, mostrando solo los
códigos de fabricante
SELECT AVG(Precio), CodigoF FROM ARTICULOS
GROUP BY CodigoF
13. Obtener el precio medio de los productos de cada fabricante, mostrando el nombre
del fabricante.
SELECT AVG(Precio), FABRICANTES.Nombre
FROM ARTICULOS, FABRICANTES
WHERE ARTICULOS.CodigoF = FABRICANTES.CodigoF
GROUP BY FABRICANTES.Nombre
14. Obtener los nombres de los fabricantes que ofrezcan productos cuyo precio medio
sea mayor o igual a 150
SELECT AVG(Precio), FABRICANTES.Nombre
FROM ARTICULOS, FABRICANTES
WHERE ARTICULOS.CodigoF = FABRICANTES.CodigoF
GROUP BY FABRICANTES.Nombre
HAVING AVG(Precio) >= 150
15. Obtener el nombre y precio del artículo más barato.
SELECT Nombre, Precio
FROM ARTICULOS
WHERE Precio = (SELECT MIN(Precio) FROM ARTICULOS)
16. Obtener una lista con el nombre y precio de los artículos más caros de cada
proveedor (incluyendo el nombre del proveedor).
SELECT A.Nombre, A.Precio, F.Nombre
FROM ARTICULOS A, FABRICANTES F
WHERE A.Fabricante = F.Codigo
AND A.Precio = (
SELECT MAX(A2.Precio)
FROM ARTICULOS A2
WHERE A2.Fabricante = Codigo)
17. Añadir un nuevo producto: Altavoces de $70 (del fabricante 2)
INSERT INTO ARTICULOS( Nombre, Precio, CodigoF)
VALUES ("Altavoces", 70, 2)
18. Cambiar el nombre del producto 8 a ’Impresora Laser’
UPDATE ARTICULOS
SET Nombre="Impresora Laser"
WHERE CodigoP = 8;
19. Aplicar un descuento del 10 % (multiplicar el precio por 0’9) a todos los productos.
UPDATE ARTICULOS SET Precio = Precio * 0.9
20. Aplicar un descuento de 10% a todos los productos cuyo precio sea mayor o igual
a 120.
UPDATE ARTICULOS WHERE Precio >= 120 SET Precio = Precio * 0.9