Ejercicio Resuelto - Tratamiento de Datos
Ejercicio Resuelto - Tratamiento de Datos
Ejercicio Resuelto - Tratamiento de Datos
1.- Inserta los siguientes datos en las correspondientes tablas PEDIDO y DETALLE_PEDIDO. Debes
utilizar los datos que figuran en las tablas siguientes teniendo en cuenta que los campos que aparecen
en blanco no deben utilizarse en las sentencias, es decir, no tendrán ningún valor.
PEDIDO
num_ped fecha_ped hora_ped hora_servir hora_entrega total_pedido cliente
100116 2018/10/05 10:35:00 14:00:00 109
DETALLE PEDIDO
num_pedido num_linea cantidad plato total_linea
100116 1 3 001
100116 2 4 004
2.- Incrementa en un 2% (redondeando con dos decimales) el precio de los platos cuyo precio original
es inferior a 3 euros.
3.- Eliminar aquellos pedidos que no hayan sido entregados en el mes de septiembre de 2018.
4.- Incrementar en 15 minutos la hora de servir los pedidos que están pendientes de servir todavía.
5.- Insertar en la tabla CLIENTES_VIP el código, nombre y apellidos de aquellos clientes que han
realizado al menos dos pedidos en la primera quincena de octubre de 2018.
6.- Actualizar el campo total_linea de todos los detalles de pedidos redondeando el valor con dos
decimales.
UPDATE DETALLE_PEDIDO
INNER JOIN PLATO ON (DETALLE_PEDIDO.plato = PLATO.cod_plato)
SET DETALLE_PEDIDO.total_linea = ROUND(DETALLE_PEDIDO.cantidad * PLATO.precio,2)
7.- Actualizar el campo total_pedido de todos los pedidos teniendo en cuenta el campo total_linea de sus
correspondientes detalles.
UPDATE PEDIDO
SET TOTAL_PEDIDO = (SELECT SUM(DE.TOTAL_LINEA)
FROM DETALLE_PEDIDO DE
WHERE DE.NUM_PEDIDO = PEDIDO.NUM_PED
GROUP BY DE.NUM_PEDIDO);
UPDATE PEDIDO
INNER JOIN DETALLE_PEDIDO ON (PEDIDO.num_ped = DETALLE_PEDIDO.num_pedido)
SET PEDIDO.total_pedido = (SELECT SUM(total_linea) FROM DETALLE_PEDIDO WHERE PEDIDO.num_ped =
DETALLE_PEDIDO.num_pedido)