Vous êtes sur la page 1sur 1

Ingeniería en Automática Industrial - Electiva Modelado de Bases de Datos

Relacionales - Taller Entidad Relación, Relacional y SQL

Teniendo el siguiente modelo relacional de un almacén cualquiera:


Producto PrecioProducto
proId bigint <pk> not null disId bigint <pk,fk2> not null
proNombre varchar(256) not null proId bigint <pk,fk1> not null
proDescripcion text not null proPrecioCompra money null
proPrecio money null

CompraProducto

ItemFactura sucId bigint <pk,fk1> not null Distribuidor


disId bigint <pk,fk2> not null
facNumero bigint <pk,fk1> not null proId bigint <pk,fk2> not null disId bigint <pk> not null
proId bigint <pk,fk2> not null comCantidad int null disNombre varchar(256) not null
itemCantidad int null comFecha date <pk> not null

Factura SedeDistribucion
Sucursal
facFecha Date not null disId bigint <pk,fk1> not null
facNumero bigint <pk> not null sucId bigint <pk> not null ciuId bigint <pk,fk2> not null
cliId bigint <fk1> not null ciuId bigint <fk> null
sucId bigint <fk2> not null sucNombre varchar(128) not null
cajId bigint <fk3> null
Ciudad

Cajero ciuId bigint <pk> not null


Cliente ciuNombre varchar(256) not null
cajId bigint <pk> not null
cliId bigint <pk> not null sucId bigint <fk> null
cliNombre varchar(256) not null cajNombre varchar(256) not null

Genere:
1. Modelo Entidad Relación correspondiente
2. Código SQL de creación de las tablas: CompraProducto , Factura, ItemFactura y PrecioVenta
3. Código SQL que altere el constraint FK_Factura_Cliente para que se actualice en cascada cuando se
ajuste el cliID
4. Código SQL que adicione el constraint FK_SedeDistribucion_Ciudad de forma que cuando se elimine
la ciudad se eliminen todas las sedes en dicha ciudad
5. Código SQL que elimine de la tabla ItemFactura todos aquellos cuya cantidad sea superior a 10.000
6. Código SQL que elimine los registros de las tablas Factura e ItemFactura de aquellas facturas que
involucren al producto con nombre “Jabón de Lavar”
7. Código SQL que incremente el precio en un 20% a todos los productos que cuyo nombre tenga la
palabra “Jabón” o que cuesten menos del $ 500
8. Consulta SQL que obtenga el listado de nombres de personas que han sido clientes y cajeros de la
misma sucursal
9. Consulta SQL que obtenga el listado de sucursales que están comprando a distribuidores que NO
tienen sede en su ciudad
10. Consulte el total de dinero gastado por la sucursal con nombre ”centro” ubicada en la ciudad con
nombre “Cali” en compras de “arroz” el día 1 de mayo de 2013
11. Consulte el total de dinero gastado por el cliente “José” durante todo el tiempo de vida del almacén
12. Consulta SQL que obtenga el nombre del distribuidor con más sucursales en una misma ciudad
13. Consulta SQL que obtenga el nombre del producto más comprado en toda la historia del almacén
14. Consulta SQL que obtenga el ranking de la sucursales por número de clientes, siendo la mejor la que a
más clientes haya generado facturas
15. Consulta SQL que obtenga el ranking de cajeros para la sucursal con nombre “campanario”: el mejor
cajero será el que más facturas haya generado, si dos o más empatan en número el desempate
deberá ser por la cantidad de productos vendidos.

Vous aimerez peut-être aussi