0% encontró este documento útil (1 voto)
16K vistas4 páginas

Ejercicios MySQL para Base de Datos

Este documento contiene ejemplos de consultas SQL y procedimientos almacenados realizados sobre una base de datos de una tienda. Incluye actualizaciones de precios de productos, datos de proveedores y empleados, consultas sobre órdenes, productos y proveedores, y la creación de dos procedimientos almacenados, uno para contar órdenes por proveedor y otro para obtener el producto con más unidades vendidas de una categoría dada.
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 DOCX, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (1 voto)
16K vistas4 páginas

Ejercicios MySQL para Base de Datos

Este documento contiene ejemplos de consultas SQL y procedimientos almacenados realizados sobre una base de datos de una tienda. Incluye actualizaciones de precios de productos, datos de proveedores y empleados, consultas sobre órdenes, productos y proveedores, y la creación de dos procedimientos almacenados, uno para contar órdenes por proveedor y otro para obtener el producto con más unidades vendidas de una categoría dada.
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 DOCX, PDF, TXT o lee en línea desde Scribd

ESCUELA POLITECNICA NACIONAL DEL ECUADOR

INGENIERA EN SISTEMAS Jorge Bustamante Geovanny Pez Karem Santilln Cesar Tenemaza

Base de Datos

09 de Diciembre del 2011

EJERCICIOS RESUELTOS EN MySQL 1. Actualizar el precio unitario de los productos de la categora CARNICOS, subindolos en un 10% use pedidos; select * from productos where categoriaid= 100;UPDATE productos SET preciounit = (preciounit+ preciounit *0.1) where categoriaid= 100; 2. Actualizar el telfono celular del proveedor cuyo contacto es MANUEL ANDRADE, con el valor 099010291 select * from proveedores where contacto like 'MANUEL ANDRADE'; UPDATE proveedores SET celuprov= 099010291; 3. Borrar el producto YOGURT DE SABORES select * from productos WHERE descripcion like 'YOGURT DE SABORES'; DELETE FROM productos WHERE descripcion like '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 compaa cliente y la fecha de orden select o.ordenid, o.fechaorden, e.nombre, e.apellido, cl.nombrecia from ordenes o join empleados e on o.empleadoid = e.empleadoid join clientes cl on o.clienteid= cl.clienteid;

4.2.

Mostrar la suma total de cada tipo de producto pedidos en todas las rdenes. select productoid, SUM(cantidad)AS'SUMA TOTAL' FROM detalle_ordenes group by productoid;

4.3.

Mostrar el nmero de rdenes atendidas por cada empleado, incluidos los que tienen 0 rdenes. select e.empleadoid as 'IdEmpleado', count(o.ordenid) AS 'Numero de Ordenes'

from ordenes o RIGHT JOIN empleados e on o.empleadoid = e.empleado idgroup by e.empleadoid;

4.4.

Muestre los proveedores y la suma de dinero vendido en los productos de ese proveedor. select pv.proveedorid, pv.nombreprov as 'Nombre Proveedor', SUM(p.preciounit*d.cantidad)as 'DineroProVendidos' from productos p JOIN detalle_ordenes d on (p.productoid=d.productoid) join proveedores pv on(p.proveedorid=pv.proveedorid) group by pv.proveedorid;

5. Realizar el siguiente procedimiento almacenado. 5.1. Escriba un procedimiento almacenado que reciba como parmetro un cdigo de proveedor y devuelve el nmero de rdenes en las que estn incluidos productos de ese proveedor. DELIMITER // CREATE PROCEDURE numero_ordenes(in codId int, out num_ordenes int) BEGIN SELECT COUNT(d.productoid) INTO num_ordenes FROM productos p join detalle_ordenes d on (p.productoid = d.productoid) and p.proveedorid = codId; END // DELIMITER; DROP PROCEDURE numero_ordenes; CALL numero_ordenes (10, @total); select @total AS 'Total ordenes';

5.2.

Escriba un procedimiento almacenado que reciba como parmetro un nombre de una categora y devuelve el cdigo del producto de esa categora que tiene ms unidades vendidas. GROUP BY j.job_desc, p.pub_name, e.job_lvl*/ DELIMITER // CREATE PROCEDURE maximo_numero_unidades(in nombreCat varchar(20), out productoidint) BEGIN

SELECT deto.productoid INTO productoid FROM detalle_ordenes deto join productos p on (deto.productoid = p.productoid) join categorias c on (p.categoriaid=c.categoriaid) where deto.cantidad in (select MAX(SUM(deto.cantidad)) from detalle_ordenes) and c.nombrecat like nombreCat group by deto.productoid, deto.cantidad; END // DELIMITER; DROP PROCEDURE maximo_numero_unidades; CALL maximo_numero_unidades ('CARNICOS',@total); select @total;

También podría gustarte