Documentos de Académico
Documentos de Profesional
Documentos de Cultura
A partir de las tablas: demo_customers que contiene los datos relacionados con el código, primer
nombre y segundo nombre de clientes, dirección, ciudad, código postal, teléfono y límite de
crédito
y la tabla demo_orders, que contiene el número de la orden, código del cliente, total de la orden o
valor de la orden, fecha de orden
Tabla DEMO_ORDER_ITEMS, que tiene información: del número de la orden, el número del
producto, precio unitario y cantidad
Asignatura: Administración de Bases de Datos
Taller de Funciones de Grupo y Join
2021-2P
Realice las siguientes consultas
1. mostrar el código del cliente, el primer nombre del cliente en mayúscula, primera dirección,
teléfono, y correo de los clientes que viven en las ciudades de Atlanta o Chicago o St. Louis
2. Contar el número de ordenes realizadas por cliente que no viven en Chicago o St. Louis
4. Mostar la sumatoria del valor parcial por orden. El valor parcial es la multiplicación del precio
unitario x la cantidad de un producto.
6. Cuente de órdenes que se han realizado por Cliente, muestre solo aquellas donde el número de
compras este entre 2 y 6.
7. Muestre el promedio del valor de venta o precio de lista de los productos que pertenecen a una
misma categoría.
8. Calcular el valor total por Orden, muestre solo las ordenes que se encuentran entre 500 y1800
dólares y que se hayan realizado en los últimos 2 meses
9. Muestre el código de la orden, nombre del producto en Mayúscula, la cantidad, el valor del
producto en formato 9,999, el valor parcial (cantidad x valor producto), valor parcial menos un
15% de descuento formatee el nombre de cada Columna, para aquellas ordenes que fueron
realizadas en los últimos 7 meses. Ordene la consulta por valor parcial.
10. Muestre el código de la orden, fecha de la orden en formato DD, nombre del día de la semana,
nombre del mes y el año, código del producto, la cantidad, el valor del producto, el valor parcial
(cantidad x valor producto) en formato $999.999, de los productos que no han sido comprados por
los clientes de ciudades Atlanta o Chicago.
11. Muestre el código de la orden, el nombre del producto, precio_unitario y cantidad, incluya en
la consulta los productos que no han sido aun comprados.
12. Muestre el código y nombre del producto con el valor más alto.
Asignatura: Administración de Bases de Datos
Taller de Funciones de Grupo y Join
2021-2P
1)
SELECT CUSTOMER_ID AS "Codigo",
UPPER(CUST_FIRST_NAME) AS "Nombre",
CUST_STREET_ADDRESS1 AS "direccion #1",
PHONE_NUMBER1 AS "telefono",
CUST_EMAIL AS "E-mail"
FROM DEMO_CUSTOMERS
WHERE CUST_CITY IN ('Atlanta', 'Chicago', 'St. Louis');
2)
SELECT count(*), A.CUSTOMER_ID
FROM DEMO_ORDERS A
JOIN DEMO_CUSTOMERS B on A.CUSTOMER_ID = B.CUSTOMER_ID
WHERE CUST_CITY NOT IN ('Chicago', 'St. Louis')
GROUP BY A.CUSTOMER_ID;
3)
SELECT A.ORDER_ID "NO ORDEN", LOWER(B.PRODUCT_NAME) "NOMBRE", A.QUANTITY
"CANTIDAD", A.UNIT_PRICE "VALOR U", (A.QUANTITY * A.UNIT_PRICE) "VALOR PARCIAL"
FROM DEMO_ORDER_ITEMS A
JOIN DEMO_PRODUCT_INFO B ON A.PRODUCT_ID = B.PRODUCT_ID
JOIN DEMO_ORDERS C ON A.ORDER_ID = C.ORDER_ID
WHERE CUSTOMER_ID IN(3,4,7);
4)
SELECT ORDER_ID "NO ORDEN", SUM(QUANTITY * UNIT_PRICE) "VALOR TOTAL"
FROM DEMO_ORDER_ITEMS
HAVING SUM(QUANTITY * UNIT_PRICE) > 1000
GROUP BY ORDER_ID
ORDER BY ORDER_ID;
5)
SELECT CATEGORY, COUNT(*) FROM DEMO_PRODUCT_INFO GROUP BY CATEGORY;
6)
SELECT CUSTOMER_ID "CLIENTE", COUNT(*)"NO ORDENES" FROM DEMO_ORDERS
GROUP BY CUSTOMER_ID
HAVING COUNT(*) BETWEEN 2 AND 6;
7)
SELECT CATEGORY "CATEGORIA", AVG(LIST_PRICE) "PROMEDIO" FROM DEMO_PRODUCT_INFO
GROUP BY CATEGORY;
Asignatura: Administración de Bases de Datos
Taller de Funciones de Grupo y Join
2021-2P
8)
SELECT A.ORDER_ID "NO ORDEN", SUM(B.QUANTITY * B.UNIT_PRICE) "VALOR PARCIAL" FROM
DEMO_ORDER_ITEMS B JOIN DEMO_ORDERS A
ON B.ORDER_ID = A.ORDER_ID
WHERE MONTHS_BETWEEN(sysdate,order_timestamp) <= 2
GROUP BY A.ORDER_ID
HAVING SUM(B.QUANTITY * B.UNIT_PRICE) BETWEEN 500 AND 1800;
9)
SELECT A.ORDER_ID "No", UPPER(PRODUCT_NAME) "NOMBRE PRODUCTO", QUANTITY
"CANTIDAD",TO_CHAR(UNIT_PRICE, '9,999' )"VALOR PRODUCTO",
(QUANTITY * UNIT_PRICE)"VALOR PARCIAL", ((QUANTITY * UNIT_PRICE)*0.15)"DESCUENTO",
((QUANTITY * UNIT_PRICE) - ((QUANTITY * UNIT_PRICE)*0.15)) "VALOR TOTAL"
FROM DEMO_ORDER_ITEMS A JOIN DEMO_PRODUCT_INFO B ON A.PRODUCT_ID =
B.PRODUCT_ID
JOIN DEMO_ORDERS C ON A.ORDER_ID = C.ORDER_ID
WHERE MONTHS_BETWEEN(sysdate,order_timestamp) <= 7
ORDER BY (QUANTITY * UNIT_PRICE);
10)
SELECT a.order_id as "Codigo Orden", to_char(order_timestamp,'DD DAY MONTH YYYY') as
"Fecha",
product_id as "Codigo Producto", quantity as "Cantidad", unit_price as "Valor",
to_char((quantity * unit_price),'999.999') as "Valor Parcial"
From DEMO_ORDERS a join DEMO_ORDER_ITEMS b on a.order_id = b.order_id
join DEMO_CUSTOMERS c on a.customer_id = c.customer_id
where cust_city not in('Atlanta', 'Chicago');
11)
SELECT a.ORDER_ID,b.QUANTITY, c.PRODUCT_NAME, c.LIST_PRICE FROM DEMO_ORDERS a JOIN
DEMO_ORDER_ITEMS b ON a.ORDER_ID = b.ORDER_ID JOIN DEMO_PRODUCT_INFO c ON
b.PRODUCT_ID = c.PRODUCT_ID WHERE PRODUCT_AVAIL = 'Y';
12)
SELECT PRODUCT_ID, PRODUCT_NAME
FROM DEMO_PRODUCT_INFO
WHERE LIST_PRICE = (SELECT MAX(LIST_PRICE) FROM DEMO_PRODUCT_INFO);