SlideShare una empresa de Scribd logo
1 de 8
/* 1. Actualizar el precio unitario de los productos de la
categoría CARNICOS, subiéndolos en un 10% */

SELECT * FROM CATEGORIAS;
SELECT * FROM PRODUCTOS ORDER BY CATEGORIAID;
UPDATE PRODUCTOS SET PRECIOUNIT = PRECIOUNIT * 1.10 WHERE
CATEGORIAID IN (SELECT CATEGORIAID FROM CATEGORIAS WHERE NOMBRECAT
= 'CARNICOS');
/*2. Actualizar el teléfono celular del proveedor cuyo contacto
es MANUEL ANDRADE, con el valor 099010291*/
--099234567
SELECT * FROM PROVEEDORES WHERE CELUPROV = '099234567';
UPDATE PROVEEDORES SET CELUPROV = '099010291' WHERE CONTACTO =
'MANUEL ANDRADE';




/*3. Borrar el producto YOGURT DE SABORES*/
SELECT * FROM PRODUCTOS;
DELETE FROM PRODUCTOS WHERE DESCRIPCION = 'YOGURT DE SABORES';
--4.   REALIZAR LAS SIGUIENTES CONSULTAS:

/*4.1 Mostrar todas las órdenes: el id de la orden, el apellido y
nombre del empleado que la atendió el nombre de la compañía
cliente y la fecha de orden */

SELECT * FROM ORDENES;
SELECT * FROM EMPLEADOS;
SELECT * FROM CLIENTES;

SELECT ORDENID,APELLIDO,NOMBRE,NOMBRECIA,FECHAORDEN FROM ORDENES O
JOIN EMPLEADOS E ON O.EMPLEADOID = E.EMPLEADOID JOIN CLIENTES C ON
O.CLIENTEID = C.CLIENTEID ORDER BY ORDENID;
/*4.2 Mostrar la suma total de cada tipo de producto pedidos en
todas las órdenes.*/

SELECT * FROM DETALLE_ORDENES;
SELECT * FROM PRODUCTOS;

SELECT DO.PRODUCTOID, SUM(CANTIDAD) AS 'TOTAL PRODUCTO' FROM
DETALLE_ORDENES DO JOIN PRODUCTOS P ON DO.PRODUCTOID =
P.PRODUCTOID GROUP BY DO.PRODUCTOID;
/*4.3 Mostrar el número de órdenes atendidas por cada empleado,
incluidos los que tienen 0 órdenes.*/

SELECT * FROM ORDENES WHERE EMPLEADOID = 2;
SELECT * FROM EMPLEADOS;
SELECT E.EMPLEADOID, COUNT(*) AS 'ORDENES POR EMPLEADO' FROM
EMPLEADOS E JOIN ORDENES O ON E.EMPLEADOID = O.EMPLEADOID GROUP BY
E.EMPLEADOID;




/*4.4 Muestre los proveedores y la suma de dinero vendido en los
productos de ese proveedor. */

SELECT * FROM PROVEEDORES;
SELECT * FROM DETALLE_ORDENES ORDER BY PRODUCTOID;
SELECT * FROM PRODUCTOS;

SELECT NOMBREPROV, SUM(CANTIDAD*PRECIOUNIT) AS 'TOTAL VENDIDO'
FROM DETALLE_ORDENES DO JOIN PRODUCTOS P ON DO.PRODUCTOID =
P.PRODUCTOID JOIN PROVEEDORES PR ON P.PROVEEDORID = PR.PROVEEDORID
GROUP BY NOMBREPROV;
--5. REALIZAR EL SIGUIENTE PROCEDIMIENTO ALMACENADO.

/*5.1 Escriba un procedimiento almacenado que reciba como
parámetro un código de proveedor y devuelve el número de órdenes
en las que están incluidos productos de ese proveedor. */

DELIMITER $$
CREATE PROCEDURE `PEDIDOS`.`NUM_ORDENES`(IN CODPROV INT)
BEGIN
SELECT COUNT(DET.CANTIDAD) FROM (DETALLE_ORDENES AS DET JOIN
PRODUCTOS AS PROD ON DET.PRODUCTOID=PROD.PRODUCTOID) JOIN
PROVEEDORES AS PROV ON PROD.PROVEEDORID=PROV.PROVEEDORID WHERE
PROV.PROVEEDORID=CODPROV GROUP BY PROV.NOMBREPROV;
END $$
DELIMITER;
CALL NUM_ORDENES(10);




/*5.2 Escriba un procedimiento almacenado que reciba como
parámetro un nombre de una categoría y devuelve el código del
producto de esa categoría que tiene más unidades vendidas.*/

DELIMITER $$
CREATE PROCEDURE `PEDIDOS`.`MAS_VENDIDO`(IN NOMBRECAT CHAR(20))
BEGIN

SELECT PROD.PRODUCTOID FROM DETALLE_ORDENES AS DET JOIN PRODUCTOS
AS PROD ON DET.PRODUCTOID=PROD.PRODUCTOID JOIN CATEGORIAS AS CAT
ON CAT.CATEGORIAID=PROD.CATEGORIAID WHERE CAT.NOMBRECAT LIKE
NOMBRECAT GROUP BY PROD.DESCRIPCION ORDER BY SUM(DET.CANTIDAD)DESC
LIMIT 1;
END $$
DELIMITER;
CALL MAS_VENDIDO('CARNICOS');

Más contenido relacionado

Similar a Actualizar precios, proveedores y eliminar producto

Similar a Actualizar precios, proveedores y eliminar producto (11)

Ejercicios sql
Ejercicios sqlEjercicios sql
Ejercicios sql
 
Ejercicios sql
Ejercicios sqlEjercicios sql
Ejercicios sql
 
El Flujo Contable
El Flujo ContableEl Flujo Contable
El Flujo Contable
 
El Flujo Contable
El Flujo ContableEl Flujo Contable
El Flujo Contable
 
Ejercicios sql
Ejercicios sqlEjercicios sql
Ejercicios sql
 
Webquest1
Webquest1Webquest1
Webquest1
 
Fgl 27 m 38m sep 06 - Servicio Tecnico Fagor
Fgl 27 m 38m sep 06 - Servicio Tecnico FagorFgl 27 m 38m sep 06 - Servicio Tecnico Fagor
Fgl 27 m 38m sep 06 - Servicio Tecnico Fagor
 
Presentacion #1
Presentacion #1Presentacion #1
Presentacion #1
 
Webquest1
Webquest1Webquest1
Webquest1
 
Tema costos conjuntos
Tema costos conjuntosTema costos conjuntos
Tema costos conjuntos
 
Presentac..
Presentac..Presentac..
Presentac..
 

Actualizar precios, proveedores y eliminar producto

  • 1. /* 1. Actualizar el precio unitario de los productos de la categoría CARNICOS, subiéndolos en un 10% */ SELECT * FROM CATEGORIAS; SELECT * FROM PRODUCTOS ORDER BY CATEGORIAID; UPDATE PRODUCTOS SET PRECIOUNIT = PRECIOUNIT * 1.10 WHERE CATEGORIAID IN (SELECT CATEGORIAID FROM CATEGORIAS WHERE NOMBRECAT = 'CARNICOS');
  • 2. /*2. Actualizar el teléfono celular del proveedor cuyo contacto es MANUEL ANDRADE, con el valor 099010291*/ --099234567 SELECT * FROM PROVEEDORES WHERE CELUPROV = '099234567'; UPDATE PROVEEDORES SET CELUPROV = '099010291' WHERE CONTACTO = 'MANUEL ANDRADE'; /*3. Borrar el producto YOGURT DE SABORES*/ SELECT * FROM PRODUCTOS; DELETE FROM PRODUCTOS WHERE DESCRIPCION = 'YOGURT DE SABORES';
  • 3. --4. REALIZAR LAS SIGUIENTES CONSULTAS: /*4.1 Mostrar todas las órdenes: el id de la orden, el apellido y nombre del empleado que la atendió el nombre de la compañía cliente y la fecha de orden */ SELECT * FROM ORDENES; SELECT * FROM EMPLEADOS; SELECT * FROM CLIENTES; SELECT ORDENID,APELLIDO,NOMBRE,NOMBRECIA,FECHAORDEN FROM ORDENES O JOIN EMPLEADOS E ON O.EMPLEADOID = E.EMPLEADOID JOIN CLIENTES C ON O.CLIENTEID = C.CLIENTEID ORDER BY ORDENID;
  • 4. /*4.2 Mostrar la suma total de cada tipo de producto pedidos en todas las órdenes.*/ SELECT * FROM DETALLE_ORDENES; SELECT * FROM PRODUCTOS; SELECT DO.PRODUCTOID, SUM(CANTIDAD) AS 'TOTAL PRODUCTO' FROM DETALLE_ORDENES DO JOIN PRODUCTOS P ON DO.PRODUCTOID = P.PRODUCTOID GROUP BY DO.PRODUCTOID;
  • 5. /*4.3 Mostrar el número de órdenes atendidas por cada empleado, incluidos los que tienen 0 órdenes.*/ SELECT * FROM ORDENES WHERE EMPLEADOID = 2; SELECT * FROM EMPLEADOS;
  • 6. SELECT E.EMPLEADOID, COUNT(*) AS 'ORDENES POR EMPLEADO' FROM EMPLEADOS E JOIN ORDENES O ON E.EMPLEADOID = O.EMPLEADOID GROUP BY E.EMPLEADOID; /*4.4 Muestre los proveedores y la suma de dinero vendido en los productos de ese proveedor. */ SELECT * FROM PROVEEDORES; SELECT * FROM DETALLE_ORDENES ORDER BY PRODUCTOID; SELECT * FROM PRODUCTOS; SELECT NOMBREPROV, SUM(CANTIDAD*PRECIOUNIT) AS 'TOTAL VENDIDO' FROM DETALLE_ORDENES DO JOIN PRODUCTOS P ON DO.PRODUCTOID = P.PRODUCTOID JOIN PROVEEDORES PR ON P.PROVEEDORID = PR.PROVEEDORID GROUP BY NOMBREPROV;
  • 7. --5. REALIZAR EL SIGUIENTE PROCEDIMIENTO ALMACENADO. /*5.1 Escriba un procedimiento almacenado que reciba como parámetro un código de proveedor y devuelve el número de órdenes en las que están incluidos productos de ese proveedor. */ DELIMITER $$ CREATE PROCEDURE `PEDIDOS`.`NUM_ORDENES`(IN CODPROV INT) BEGIN SELECT COUNT(DET.CANTIDAD) FROM (DETALLE_ORDENES AS DET JOIN PRODUCTOS AS PROD ON DET.PRODUCTOID=PROD.PRODUCTOID) JOIN
  • 8. PROVEEDORES AS PROV ON PROD.PROVEEDORID=PROV.PROVEEDORID WHERE PROV.PROVEEDORID=CODPROV GROUP BY PROV.NOMBREPROV; END $$ DELIMITER; CALL NUM_ORDENES(10); /*5.2 Escriba un procedimiento almacenado que reciba como parámetro un nombre de una categoría y devuelve el código del producto de esa categoría que tiene más unidades vendidas.*/ DELIMITER $$ CREATE PROCEDURE `PEDIDOS`.`MAS_VENDIDO`(IN NOMBRECAT CHAR(20)) BEGIN SELECT PROD.PRODUCTOID FROM DETALLE_ORDENES AS DET JOIN PRODUCTOS AS PROD ON DET.PRODUCTOID=PROD.PRODUCTOID JOIN CATEGORIAS AS CAT ON CAT.CATEGORIAID=PROD.CATEGORIAID WHERE CAT.NOMBRECAT LIKE NOMBRECAT GROUP BY PROD.DESCRIPCION ORDER BY SUM(DET.CANTIDAD)DESC LIMIT 1; END $$ DELIMITER; CALL MAS_VENDIDO('CARNICOS');