Pamela Ordóñez
Deber
SQL - ClassicModels
USE classicmodels;
-- 1. Muestre los productos que cuesten mas de $500, pero menos de $2500.
SELECT * FROM products WHERE buyPrice BETWEEN 500 AND 2500;
-- 2. Muestre el promedio de ventas por oficina, siempre y cuando la suma de ventas
sean mayores que $35.000
SELECT [Link],
AVG(amount) 'Promedio de ventas'
FROM payments pym
JOIN customers cus ON ([Link] = [Link])
JOIN employees emp ON ([Link] =
[Link])
GROUP BY [Link]
HAVING SUM(amount) > 35000;
-- 3. Indique el número de productos por línea de producto.
SELECT [Link],
COUNT(*) 'Numero de productos'
FROM products pd
JOIN productlines pdl ON ([Link] = [Link])
GROUP BY [Link];
-- 4. Muestre los empleados que NO trabajan en la Ciudad de Boston o en la ciudad
de Paris.
SELECT [Link],
[Link],
[Link]
FROM employees emp
JOIN offices off ON ([Link] = [Link])
WHERE [Link] NOT IN ('Boston', 'Paris');
-- 5. Muestre el número de productos por vendedor(productVendor) siempre y
cuando vendan mas de 5 productos.
SELECT [Link],
COUNT(*) 'Numero de productos'
FROM products pd
GROUP BY [Link]
HAVING COUNT(*) > 5;
-- 6. Muestre el promedio de pagos realizados por cliente.
SELECT [Link],
[Link],
AVG([Link]) 'Promedio de pagos'
FROM payments pym
JOIN customers cus ON ([Link] = [Link])
GROUP BY [Link];
-- 7. Muestre el nombre, apellido y total pagos de los clientes cuyo valor sea menor a
$110.000.
SELECT [Link],
[Link],
SUM([Link]) 'Total pagado'
FROM payments pym
JOIN customers cus ON ([Link] = [Link])
GROUP BY [Link]
HAVING SUM([Link]) < 110000;
-- 8. Muestre cuántos pedidos ha realizado los clientes cuyo apellido incluye las letras
‘ar’.
SELECT [Link],
[Link],
COUNT(*) 'Numero de pedidos'
FROM orderdetails odd
JOIN orders ord ON ([Link] = [Link])
JOIN customers cus ON ([Link] = [Link])
WHERE [Link] LIKE '%ar%'
GROUP BY [Link];
-- 9. Muestre la cantidad de órdenes enviadas en el mes de Marzo por oficina.
SELECT [Link],
COUNT(orderNumber) 'Numero de ordenes'
FROM orders ord
JOIN customers cus ON ([Link] = [Link])
JOIN employees emp ON ([Link] = [Link])
WHERE ([Link] = 'Shipped') AND ([Link] BETWEEN '2005-03-01' AND
'2005-03-31')
GROUP BY [Link];
-- 10. Muestre los productos vendidos por todos los empleados que trabajan en las
oficinas de Paris.
SELECT DISTINCT [Link]
FROM orderdetails odd
JOIN orders ord ON ([Link] = [Link])
JOIN customers cus ON ([Link] = [Link])
JOIN employees emp ON ([Link] =
[Link])
JOIN offices off ON ([Link] = [Link])
JOIN products prd ON ([Link] = [Link])
WHERE [Link] = 'Paris';