Está en la página 1de 5

FACULTAD DE

INGENIERIA ESCUELA
DE INGENIERÍA DE
SISTEMAS

GUÍA DE PRÁCTICA DE LABORATORIO Nro. 07


EXPERIENCIA CURRICULAR: INTELIGENCIA DE NEGOCIOS

DOCENTE: Dr(c).Mg.Ing.Ivan Petrlik Azabache Sesion 7

Según al caso de estudio Petrlik S.A.C se proporciona la base de datos transaccional:

Además, construir en SQL el modelo lógico del datamart (Modelo dimensional) del caso de
estudio desarrollado.

Implementar el lenguaje ETL para la extracción, transferencia y el cargado de los datos del
Modelo de base de datos transaccional al Modelo lógico del datamart (Modelo
dimensional).
Ejemplos de ETL :
Use FarmaciaDW

Crear Tabla medicinas

Select IdMedicina,NomGen as NomGenerico,NomCom as NomComercial,Detalle_present as


Presentacion into Medicinas

from medicinas inner join presentación on medicinas.idpresentacion=medicinas.idpresentacion

Order by idmedicina.

Crear Tabla laboratorios

Select IdLaboratorio,nombre as Laboratorio

Into Laboratorios

From laboratorios order by IdLaboratorio

Crear Tabla Locales

Select IdLocal,NomLocal

Into Locales

From locales order by IdLocal

Crear Tabla Distritos

Select IdDistrito, Distrito

Into Distritos

From distritos order by IdDistrito

Crear Tabla Distribuidores

Select IdDistribuidor,nomdis as Distribuidor

Into Distribuidores

From distribuidor order by IdDistribuidor

Crear Tabla Fecha

select YEAR(Fecha_Vencimiento)*10000 + MONTH(Fecha_Vencimiento)*100 +


DAY(Fecha_Vencimiento) as idfecha,
YEAR(Fecha_Vencimiento) as año,

case when MONTH(Fecha_Vencimiento)=1 then 'Enero'

when MONTH(Fecha_Vencimiento)=2 then 'Febrero'

when MONTH(Fecha_Vencimiento)=3 then 'Marzo'

when MONTH(Fecha_Vencimiento)=4 then 'Abril'

when MONTH(Fecha_Vencimiento)=5 then 'Mayo'

when MONTH(Fecha_Vencimiento)=6 then 'Junio'

when MONTH(Fecha_Vencimiento)=7 then 'Julio'

when MONTH(Fecha_Vencimiento)=8 then 'Agosto'

when MONTH(Fecha_Vencimiento)=9 then 'Setiembre'

when MONTH(Fecha_Vencimiento)=10 then 'Octubre'

when MONTH(Fecha_Vencimiento)=11 then 'Noviembre'

when MONTH(Fecha_Vencimiento)=12 then 'Diciembre'

end as mes, DAY(Fecha_Vencimiento) as dia

into fecha

from Almacen

order by idfecha

Crear Tabla Almacen

Select IdLocal, IdDistrito, IdMedicina, IdLaboratorio, Iddistribuidor,


((year(Fecha_Vencimiento)*10000)+(month(Fecha_Vencimiento)*100)+
(day(Fecha_Vencimiento))) as idfecha, Count(nomlocal) as Numero, sum(stock) as Stock_Total

into Almacen

From Locales inner join Almacen on Locales.IdLocal=Almacen.IdLocal

inner join Distritos on Locales.Iddistrito=Distritos.Iddistrito

Inner join Medicinas on Medicinas.IdMedicina=Almacen.IdMedicina

Inner join laboratorio on Medicinas.idLaboratorio=Laboratorio.IdLaboratorio


Inner join distribuidor on medicinas.iddistribuidor=distribuidor.iddistribuidor

Group by IdLocal,IdDistrito,IdMedicina,IdLaboratorio,IdDistribuidor, Fecha_Vencimiento

Order by IdLocal, IdDistrito, IdMedicina, IdLaboratorio, IdDistribuidor, Fecha_Vencimiento,


numero,Stock_Total

También podría gustarte