SlideShare una empresa de Scribd logo
1 de 24
UNIVERSIDAD DE GUAYAQUIL
FACULTAD DE CIENCIAS FISICAS Y
MATEMATICAS
CARERRA DE ING. EN SISTEMAS
COMPUTACIONALES
ELECTIVAS III
TEMA: PROYECTO ELECTIVA III
AUTORES: JIMMY CARAGUAY OGOÑO
TUTOR: ING. MARÍA ISABEL GALARZA S.
CICLO I - (2018 – 2019)
GUAYAQUIL – GUAYAS – ECUADOR
1. Ingresar a la página http://www.ecuadorencifras.gob.ec/ecuador-en-cifras/ y luego al
Menú Estadísticas por Fuentes y descargar las siguientes bases de Datos:
Matrimonios 2016, Matrimonios 2017, Divorcios2016 y Divorcios2017. Estas bases
de datos se descargan en un archivo empaquetado, dentro del cual se encontrarán 3
archivos por cada descarga. El proyecto se realizará con los cuatro archivos CSV
(Comma Separated Values, Valores separados por coma).
2. Cree una nueva Base de Datos en Sql Server.
Creamos la Base de datos llamada cifras
3. Agregar a cada archivo de Excel tres columnas: Tipo (1=Matrimonios /2=Divorcio,
Nombre (Matrimonio/Divorcio) y código_secuencial. El código debe empezar en 1
para los archivos del 2016 y para el 2017 deben empezar con la secuencia que terminó
el 2016 más 1.
Tabla de Divorcios 2016.
Tabla de Divorcios 2017.
Tabla de Matrimonios 2016.
Tabla de Matrimonios 2017.
4. Importar los cuatro archivos CSV descargados a la nueva base de Datos en Sql
Server con un nombre descriptivo.
Hacemos click derecho en la base de datos creada en este caso CIFRAS, vamos a tareas
y luego importar datos.
Seleccionamos el origen de datos, en este caso Excel y el achivo a importar.
Seleccionamos un destino para la importacion de los datos en este caso es OLEDB
proveedor de SQL Server y la base de datos CIFRAS.
La informacion guardada en excel sera almacenada en una tabla de la Base de datos
Cifras o en una vista.
Le damos un nombre a esas nuevas tablas q se crearan en la BD CIFRAS en este caso
Matrimonios 2017 y asi con el resto de archivos excel.
Como se muestra en la imagen ya se encuentran todas las tablas con la información
importada de los archivos Excel.
5. Cree un script para crear una nueva tabla de Matrimonios_unificada basada en la
estructura del año 2017 y cree la nueva tabla ejecutando el Script. Observar imagen
siguiente.
USE [cifras]
GO
/****** Object: Table [dbo].[Divorcios_Unificada] Script Date: 17/08/2018
13:49:09 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[Divorcios_Unificada](
[ofi_insc] [float] NULL,
[prov_insc] [nvarchar](255) NULL,
[cant_insc] [nvarchar](255) NULL,
[parr_insc] [nvarchar](255) NULL,
[anio_insc] [float] NULL,
[mes_insc] [nvarchar](255) NULL,
[dia_insc] [float] NULL,
[fecha_insc] [datetime] NULL,
[anio_div] [float] NULL,
[mes_div] [nvarchar](255) NULL,
[dia_div] [float] NULL,
[fecha_div] [nvarchar](255) NULL,
[anio_mat] [float] NULL,
[mes_mat] [nvarchar](255) NULL,
[dia_mat] [float] NULL,
[fecha_mat] [nvarchar](255) NULL,
[mcap_bie] [nvarchar](255) NULL,
[dur_mat] [float] NULL,
[cau_div] [nvarchar](255) NULL,
[nac_hom] [nvarchar](255) NULL,
[cod_paish] [float] NULL,
[anio_nach] [float] NULL,
[mes_nach] [nvarchar](255) NULL,
[dia_nach] [float] NULL,
[fecha_nach] [nvarchar](255) NULL,
[edad_hom] [float] NULL,
[hijos_hom] [float] NULL,
[p_etnica_hom] [nvarchar](255) NULL,
[niv_insth] [nvarchar](255) NULL,
[sabe_leerh] [nvarchar](255) NULL,
[prov_habh] [nvarchar](255) NULL,
[cant_habh] [nvarchar](255) NULL,
[parr_habh] [nvarchar](255) NULL,
[area_resh] [nvarchar](255) NULL,
[nac_muj] [nvarchar](255) NULL,
[cod_paism] [float] NULL,
[anio_nacm] [float] NULL,
[mes_nacm] [nvarchar](255) NULL,
[dia_nacm] [float] NULL,
[fecha_nacm] [nvarchar](255) NULL,
[edad_muj] [float] NULL,
[hijos_muj] [float] NULL,
[p_etnica_muj] [nvarchar](255) NULL,
[niv_instm] [nvarchar](255) NULL,
[sabe_leerm] [nvarchar](255) NULL,
[prov_habm] [nvarchar](255) NULL,
[cant_habm] [nvarchar](255) NULL,
[parr_habm] [nvarchar](255) NULL,
[area_resm] [nvarchar](255) NULL,
[tipo] [float] NULL,
[nombre] [nvarchar](255) NULL,
[codigo_secuencial] [float] NULL
) ON [PRIMARY]
GO
6. Cree un script para crear una nueva tabla de Divorcios_unificada basada en la
estructura del año 2017 y cree la nueva tabla ejecutando el Script. Observar imagen
siguiente.
USE [cifras]
GO
/****** Object: Table [dbo].[Matrimonios_Unificada] Script Date: 17/08/2018
13:50:55 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[Matrimonios_Unificada](
[ofi_insc] [float] NULL,
[prov_insc] [nvarchar](255) NULL,
[cant_insc] [nvarchar](255) NULL,
[parr_insc] [nvarchar](255) NULL,
[anio_insc] [float] NULL,
[mes_insc] [nvarchar](255) NULL,
[dia_insc] [float] NULL,
[fecha_insc] [nvarchar](255) NULL,
[hijos_rec] [float] NULL,
[mcap_bie] [nvarchar](255) NULL,
[nac_hom] [nvarchar](255) NULL,
[cod_paish] [float] NULL,
[anio_nach] [float] NULL,
[mes_nach] [nvarchar](255) NULL,
[dia_nach] [float] NULL,
[fecha_nach] [nvarchar](255) NULL,
[edad_hom] [float] NULL,
[nmatanth] [float] NULL,
[est_civih] [nvarchar](255) NULL,
[p_etnica_hom] [nvarchar](255) NULL,
[niv_insth] [nvarchar](255) NULL,
[sabe_leerh] [nvarchar](255) NULL,
[prov_habh] [nvarchar](255) NULL,
[cant_habh] [nvarchar](255) NULL,
[parr_habh] [nvarchar](255) NULL,
[area_resh] [nvarchar](255) NULL,
[nac_muj] [nvarchar](255) NULL,
[cod_paism] [float] NULL,
[anio_nacm] [float] NULL,
[mes_nacm] [nvarchar](255) NULL,
[dia_nacm] [float] NULL,
[fecha_nacm] [datetime] NULL,
[edad_muj] [float] NULL,
[nmatantm] [float] NULL,
[est_civim] [nvarchar](255) NULL,
[p_etnica_muj] [nvarchar](255) NULL,
[niv_instm] [nvarchar](255) NULL,
[sabe_leerm] [nvarchar](255) NULL,
[prov_habm] [nvarchar](255) NULL,
[cant_habm] [nvarchar](255) NULL,
[parr_habm] [nvarchar](255) NULL,
[area_resm] [nvarchar](255) NULL,
[tipo] [float] NULL,
[nombre] [nvarchar](255) NULL,
[codigo_secuencial] [float] NULL
) ON [PRIMARY]
GO
7. Exportar la tabla de Divorcios2016 a Divorcios_unificado. Leer Punto 11.
8. Exportar la tabla de Divorcios2017 a Divorcios_unificado. Leer Punto 11.
9. Exportar la tabla de Matrimonios2016 a Matrimonios_unificado. Leer Punto 11.
10. Exportar la tabla de Matrimonios 2017 a Matrimonios _unificado. Leer Punto 11.
11. Debido a diferentes tipos de datos omita los campos cau_div, cod_paish y
cod_paism en el proceso de exportación, botón Editar asignaciones.
Hacemos click derecho en la base de datos creada en este caso CIFRAS, vamos a tareas
y luego exportar datos.
Seleccionamos el origen de los datos que es en el servidor nativo Cliente SQL Server
y la de base datos Cifras.
Seleccionamos el destino de los datos que es en el servidor nativo Cliente SQL Server
en la de base datos Cifras.
Seleccionamos las tablas Divorcios 2016 y 2017 del cual vamos exportar la
información a la nueva tabla vacía, la cual es Divorcio Unificada y así hacemos lo
mismo con las de Matrimonio
Omitimos ciertos campos para q no aparezcan en la nueva tabla las cuales son
cau_div, cod_paish y cod_paism
Las nuevas tablas listas para aplicar los scripts necesarios.
12. Realizar los siguientes procedimientos almacenados (SP):
a. Obtener Duración Mínima (MIN), máxima (MAX) y promedio (AVG) de los
matrimonios. Para esto, utilizar campo dur_mat el cual contiene la duración de los
matrimonios en años. No requiere gráfico estadístico.
Aquí podemos que se creo un procedimiento almacenado para extraer el mínimo
y el máximo donde se usaron los comando MIN y MAX para obtenerlos de los
respectivos campos.
CREATE PROCEDURE SP_Duracion_Matrimonios
As
begin
SELECT MIN(D.dur_mat) as DuracionMinima, MAX(D.dur_mat) as
DuracionMaxima , AVG(D.dur_mat)as Promedio
FROM Divorcios_Unificada as D;
end
exec SP_Duracion_Matrimonios
b. Listado de la Cantidad de Matrimonios durante el año 2017 agrupadas por
meses. Gráfico Lineal.
CREATE PROCEDURE SP_MATRI2017_MES
As
begin
select COUNT(*) as MATRIMONIOS_2017, mes_insc AS MES
into MatrimonioMes2017
from Matrimonios_Unificada where anio_insc = '2017'
GROUP BY mes_insc
end
En este procedimiento almacenado se creo para extraer infomacion de lo
smatrimonios que se dieron en el 2017 usamos los comando COUNT para contar
el total de matrimonios y luego el comando GROUP BY para agruparlos por mes
Este es el resultado de la consulta Query
Usando el Power Pivot para esxtraer información de la Base de datos y asi gestionar
esa información.
En este grafico lineal podemos observa que en el mes de diciembre se dieron mas
matrimonios durante el 2017
c. Listado de cantidad de Matrimonios que se dieron en el año 2017 agrupadas
por provincia. Gráfico de barras.
CREATE PROCEDURE SP_MATRI2017_PROV
As
begin
select COUNT(*) as MATRIMONIOS_2017, prov_insc AS PROVINCIA
into MatrimonioProv2017
from Matrimonios_Unificada where anio_insc = '2017'
GROUP BY prov_insc
end
EXEC SP_MATRI2017_PROV
Este es el código analizado para mostrar todos los matrimonios en el año 2017
4371
5646
7271
4237 4496 4781 4744 5000
4540
5038 5054 5175
0
1000
2000
3000
4000
5000
6000
7000
8000
Matrimonios por mes 2017
Total
Esta es la tabla resultante una vez ejecutado el procedimiento almacenado.
Esta tabla resulta de la extracción de la Base de Datos a Excel a través de
Power Pivot.
En la Grafica podemos Observar que se llevaron acabo matrimonios con mas
frecuencia en las provincias del Guayas Y Pichincha.
d. Informe unificado de matrimonios y Divorcios durante el año 2016 agrupados
por meses y Tipo (Matrimonio o Divorcio) con un gráfico lineal o de barras donde se
visualicen ambos datos para ver el comportamiento de ambos registros.
CREATE PROCEDURE SP_MES_TIPO
As
begin
SELECT MONTH( convert(datetime,fecha_insc,101)) as num_mes,
rtrim(ltrim(mes_insc)) as MES,
NOMBRE AS TIPO, COUNT(*) AS TOTAL
INTO INFORME2016
FROM Matrimonios2016
WHERE fecha_insc IS NOT NULL
GROUP BY MONTH( convert(datetime,fecha_insc,101)), rtrim(ltrim(mes_insc)), nombre
UNION
SELECT MONTH( convert(datetime,fecha_insc,101)) as num_mes,
rtrim(ltrim(mes_insc)) as MES,
NOMBRE AS TIPO, COUNT(*) AS TOTAL
FROM Divorcios2016
WHERE fecha_insc IS NOT NULL
GROUP BY MONTH( convert(datetime,fecha_insc,101)), rtrim(ltrim(mes_insc)), nombre
order BY MONTH( convert(datetime,fecha_insc,101)), rtrim(ltrim(mes_insc)), nombre
end
exec SP_MES_TIPO
SELECT * FROM INFORME2016
SELECT * FROM INFORME2016 Where tipo = 'divorcio'
SELECT * FROM INFORME2016 Where tipo = 'matrimonio'
0
2000
4000
6000
8000
10000
12000
14000
16000
18000
Azuay
Bolívar
Cañar
Carchi
Chimborazo
Cotopaxi
ElOro
Esmeraldas
Galápagos
Guayas
Imbabura
Loja
LosRíos
Manabí
MoronaSantiago
Napo
Orellana
Pastaza
Pichincha
SantaElena
SantoDomingode…
Sucumbíos
Tungurahua
ZamoraChinchipe
Matrimonios por provincia 2017
Total
En este query usamos dos select para poder obtener esta tabla uno es para obtener los
matrimonios y otro es para obtener los divorcios en el 2016 los cuales estan agrupados
por numero de mes, mes y tipo, en los datos de la en especial en fecha_insc se tenia un
problema no sepodia obtener el mes ya que elformato de lainformacion se encontraba
con / (yyyy/mm/dd) lo cual no daba un error si usabamos el comando MONTH
directamente asi q ante devimos usar el CONVERT y pasarlo a DATETIME
Tabla resultante en la consulta de query anterior
num_mes Mes Matrimonio Divorcio
1 Enero 3765 1985
2 Febrero 4958 1926
3 Marzo 4473 2168
4 Abril 4680 1755
5 Mayo 4189 1860
6 Junio 4344 2002
7 Julio 4911 1993
8 Agosto 5378 2443
9 Septiembre 5142 2423
10 Octubre 5050 2419
11 Noviembre 4434 2211
12 Diciembre 6414 2463
Tabla resultante usando el Power Pivot cuya informacion es extraida de la base datos
Cifras y query usado enteriormente
En este grafico podemos analizar que en el año 2016 hubo más matrimonios
que divorcios.
13. Para los procedimientos almacenados realizar un tablero de control donde
se visualicen los datos obtenidos de cada Stored Procedure y su gráfico estadístico en
las herramientas Qlik View, Qlik Sense, Pentaho, Tableau, PowerBI, Reporting Services
de Sql Server.
La herramienta que se utilizó para esta práctica fue Qlik View
0
1000
2000
3000
4000
5000
6000
7000
Enero
Febrero
Marzo
Abril
Mayo
Junio
Julio
Agosto
Septiembre
Octubre
Noviembre
Diciembre
1 2 3 4 5 6 7 8 9 10 11 12
Informe unificadode Matrimonios y Divorcios 2016
Matrimonio Divorcio
Informe de los matrimonio y divorcios en el año 2016
14. OPCIONAL: En un solo procedimiento realizar lo siguiente:
a. Edad promedio a la que se casan los varones.
b. Edad promedio a la que se casan las mujeres.
c. Edad promedio a la que se divorcian los varones.
d. Edad promedio a la que se divorcian las mujeres.
CREATE PROCEDURE SP_EDADES
As
begin
select nombre as TIPO ,'Hombres' as Genero,AVG(edad_hom) as
Edad_promedio,MIN(edad_hom) as Edad_Min,MAX(edad_hom) as Edad_Max
from Matrimonios_Unificada
where edad_hom IS NOT NULL
GROUP BY nombre
union
select nombre as TIPO, 'Mujeres' as Genero,AVG(edad_muj) as
Edad_promedio,MIN(edad_muj) as Min_Matri_MUJ,MAX(edad_muj) as Max_Matri_Muj
from Matrimonios_Unificada
where edad_muj IS NOT NULL
GROUP BY nombre
union
select nombre as TIPO,'Hombres' as Genero ,AVG(edad_hom) as
Edad_promedio,MIN(edad_hom) as Min_Matri_Hom,MAX(edad_hom) as Max_Matri_Hom
from Divorcios_Unificada
where edad_hom IS NOT NULL
GROUP BY nombre
union
select nombre as TIPO,'Mujeres' as Genero ,AVG(edad_muj) as
Edad_promedio,MIN(edad_muj) as Min_Matri_Hom,MAX(edad_muj) as Max_Matri_Muj
from Divorcios_Unificada
where edad_muj IS NOT NULL
GROUP BY nombre
end
exec SP_EDADES
15. Realizar comentarios de los resultados del análisis de la información obtenida

Más contenido relacionado

Similar a Proyecto 2

Similar a Proyecto 2 (20)

Guía para la creación de cubos de datos
Guía para la creación de cubos de datosGuía para la creación de cubos de datos
Guía para la creación de cubos de datos
 
Visualización tableau
Visualización tableauVisualización tableau
Visualización tableau
 
Presentación de Minería de Datos_ Adventure Works
Presentación de Minería de Datos_ Adventure WorksPresentación de Minería de Datos_ Adventure Works
Presentación de Minería de Datos_ Adventure Works
 
9
99
9
 
9
99
9
 
9
99
9
 
9
99
9
 
Bhpdkcjs
BhpdkcjsBhpdkcjs
Bhpdkcjs
 
Michel vargas gonzalez
Michel vargas gonzalezMichel vargas gonzalez
Michel vargas gonzalez
 
Tutorial MIneria de datos en sql server
Tutorial  MIneria de datos en sql serverTutorial  MIneria de datos en sql server
Tutorial MIneria de datos en sql server
 
Inf 13 (switch)
Inf 13 (switch)Inf 13 (switch)
Inf 13 (switch)
 
Creacion de data mart
Creacion de data martCreacion de data mart
Creacion de data mart
 
Primeros pasos con Talent Open Studio TOS : Importando datos
Primeros pasos con Talent Open Studio TOS : Importando datosPrimeros pasos con Talent Open Studio TOS : Importando datos
Primeros pasos con Talent Open Studio TOS : Importando datos
 
Iemdsql server2008
Iemdsql server2008Iemdsql server2008
Iemdsql server2008
 
j
jj
j
 
g
gg
g
 
l
ll
l
 
Sql server 2012
Sql  server 2012Sql  server 2012
Sql server 2012
 
Vb aspx transac
Vb aspx transacVb aspx transac
Vb aspx transac
 
Vb aspx transac
Vb aspx transacVb aspx transac
Vb aspx transac
 

Proyecto 2

  • 1. UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS FISICAS Y MATEMATICAS CARERRA DE ING. EN SISTEMAS COMPUTACIONALES ELECTIVAS III TEMA: PROYECTO ELECTIVA III AUTORES: JIMMY CARAGUAY OGOÑO TUTOR: ING. MARÍA ISABEL GALARZA S. CICLO I - (2018 – 2019) GUAYAQUIL – GUAYAS – ECUADOR
  • 2. 1. Ingresar a la página http://www.ecuadorencifras.gob.ec/ecuador-en-cifras/ y luego al Menú Estadísticas por Fuentes y descargar las siguientes bases de Datos: Matrimonios 2016, Matrimonios 2017, Divorcios2016 y Divorcios2017. Estas bases de datos se descargan en un archivo empaquetado, dentro del cual se encontrarán 3 archivos por cada descarga. El proyecto se realizará con los cuatro archivos CSV (Comma Separated Values, Valores separados por coma).
  • 3. 2. Cree una nueva Base de Datos en Sql Server. Creamos la Base de datos llamada cifras 3. Agregar a cada archivo de Excel tres columnas: Tipo (1=Matrimonios /2=Divorcio, Nombre (Matrimonio/Divorcio) y código_secuencial. El código debe empezar en 1 para los archivos del 2016 y para el 2017 deben empezar con la secuencia que terminó el 2016 más 1. Tabla de Divorcios 2016.
  • 4. Tabla de Divorcios 2017. Tabla de Matrimonios 2016.
  • 5. Tabla de Matrimonios 2017. 4. Importar los cuatro archivos CSV descargados a la nueva base de Datos en Sql Server con un nombre descriptivo.
  • 6. Hacemos click derecho en la base de datos creada en este caso CIFRAS, vamos a tareas y luego importar datos. Seleccionamos el origen de datos, en este caso Excel y el achivo a importar.
  • 7. Seleccionamos un destino para la importacion de los datos en este caso es OLEDB proveedor de SQL Server y la base de datos CIFRAS.
  • 8. La informacion guardada en excel sera almacenada en una tabla de la Base de datos Cifras o en una vista.
  • 9. Le damos un nombre a esas nuevas tablas q se crearan en la BD CIFRAS en este caso Matrimonios 2017 y asi con el resto de archivos excel. Como se muestra en la imagen ya se encuentran todas las tablas con la información importada de los archivos Excel. 5. Cree un script para crear una nueva tabla de Matrimonios_unificada basada en la estructura del año 2017 y cree la nueva tabla ejecutando el Script. Observar imagen siguiente. USE [cifras] GO /****** Object: Table [dbo].[Divorcios_Unificada] Script Date: 17/08/2018 13:49:09 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO CREATE TABLE [dbo].[Divorcios_Unificada]( [ofi_insc] [float] NULL, [prov_insc] [nvarchar](255) NULL, [cant_insc] [nvarchar](255) NULL, [parr_insc] [nvarchar](255) NULL, [anio_insc] [float] NULL, [mes_insc] [nvarchar](255) NULL, [dia_insc] [float] NULL, [fecha_insc] [datetime] NULL, [anio_div] [float] NULL, [mes_div] [nvarchar](255) NULL, [dia_div] [float] NULL, [fecha_div] [nvarchar](255) NULL, [anio_mat] [float] NULL, [mes_mat] [nvarchar](255) NULL, [dia_mat] [float] NULL, [fecha_mat] [nvarchar](255) NULL, [mcap_bie] [nvarchar](255) NULL, [dur_mat] [float] NULL,
  • 10. [cau_div] [nvarchar](255) NULL, [nac_hom] [nvarchar](255) NULL, [cod_paish] [float] NULL, [anio_nach] [float] NULL, [mes_nach] [nvarchar](255) NULL, [dia_nach] [float] NULL, [fecha_nach] [nvarchar](255) NULL, [edad_hom] [float] NULL, [hijos_hom] [float] NULL, [p_etnica_hom] [nvarchar](255) NULL, [niv_insth] [nvarchar](255) NULL, [sabe_leerh] [nvarchar](255) NULL, [prov_habh] [nvarchar](255) NULL, [cant_habh] [nvarchar](255) NULL, [parr_habh] [nvarchar](255) NULL, [area_resh] [nvarchar](255) NULL, [nac_muj] [nvarchar](255) NULL, [cod_paism] [float] NULL, [anio_nacm] [float] NULL, [mes_nacm] [nvarchar](255) NULL, [dia_nacm] [float] NULL, [fecha_nacm] [nvarchar](255) NULL, [edad_muj] [float] NULL, [hijos_muj] [float] NULL, [p_etnica_muj] [nvarchar](255) NULL, [niv_instm] [nvarchar](255) NULL, [sabe_leerm] [nvarchar](255) NULL, [prov_habm] [nvarchar](255) NULL, [cant_habm] [nvarchar](255) NULL, [parr_habm] [nvarchar](255) NULL, [area_resm] [nvarchar](255) NULL, [tipo] [float] NULL, [nombre] [nvarchar](255) NULL, [codigo_secuencial] [float] NULL ) ON [PRIMARY] GO 6. Cree un script para crear una nueva tabla de Divorcios_unificada basada en la estructura del año 2017 y cree la nueva tabla ejecutando el Script. Observar imagen siguiente. USE [cifras] GO /****** Object: Table [dbo].[Matrimonios_Unificada] Script Date: 17/08/2018 13:50:55 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO CREATE TABLE [dbo].[Matrimonios_Unificada]( [ofi_insc] [float] NULL, [prov_insc] [nvarchar](255) NULL, [cant_insc] [nvarchar](255) NULL, [parr_insc] [nvarchar](255) NULL,
  • 11. [anio_insc] [float] NULL, [mes_insc] [nvarchar](255) NULL, [dia_insc] [float] NULL, [fecha_insc] [nvarchar](255) NULL, [hijos_rec] [float] NULL, [mcap_bie] [nvarchar](255) NULL, [nac_hom] [nvarchar](255) NULL, [cod_paish] [float] NULL, [anio_nach] [float] NULL, [mes_nach] [nvarchar](255) NULL, [dia_nach] [float] NULL, [fecha_nach] [nvarchar](255) NULL, [edad_hom] [float] NULL, [nmatanth] [float] NULL, [est_civih] [nvarchar](255) NULL, [p_etnica_hom] [nvarchar](255) NULL, [niv_insth] [nvarchar](255) NULL, [sabe_leerh] [nvarchar](255) NULL, [prov_habh] [nvarchar](255) NULL, [cant_habh] [nvarchar](255) NULL, [parr_habh] [nvarchar](255) NULL, [area_resh] [nvarchar](255) NULL, [nac_muj] [nvarchar](255) NULL, [cod_paism] [float] NULL, [anio_nacm] [float] NULL, [mes_nacm] [nvarchar](255) NULL, [dia_nacm] [float] NULL, [fecha_nacm] [datetime] NULL, [edad_muj] [float] NULL, [nmatantm] [float] NULL, [est_civim] [nvarchar](255) NULL, [p_etnica_muj] [nvarchar](255) NULL, [niv_instm] [nvarchar](255) NULL, [sabe_leerm] [nvarchar](255) NULL, [prov_habm] [nvarchar](255) NULL, [cant_habm] [nvarchar](255) NULL, [parr_habm] [nvarchar](255) NULL, [area_resm] [nvarchar](255) NULL, [tipo] [float] NULL, [nombre] [nvarchar](255) NULL, [codigo_secuencial] [float] NULL ) ON [PRIMARY] GO 7. Exportar la tabla de Divorcios2016 a Divorcios_unificado. Leer Punto 11. 8. Exportar la tabla de Divorcios2017 a Divorcios_unificado. Leer Punto 11. 9. Exportar la tabla de Matrimonios2016 a Matrimonios_unificado. Leer Punto 11. 10. Exportar la tabla de Matrimonios 2017 a Matrimonios _unificado. Leer Punto 11. 11. Debido a diferentes tipos de datos omita los campos cau_div, cod_paish y cod_paism en el proceso de exportación, botón Editar asignaciones.
  • 12. Hacemos click derecho en la base de datos creada en este caso CIFRAS, vamos a tareas y luego exportar datos. Seleccionamos el origen de los datos que es en el servidor nativo Cliente SQL Server y la de base datos Cifras.
  • 13. Seleccionamos el destino de los datos que es en el servidor nativo Cliente SQL Server en la de base datos Cifras. Seleccionamos las tablas Divorcios 2016 y 2017 del cual vamos exportar la información a la nueva tabla vacía, la cual es Divorcio Unificada y así hacemos lo mismo con las de Matrimonio
  • 14. Omitimos ciertos campos para q no aparezcan en la nueva tabla las cuales son cau_div, cod_paish y cod_paism Las nuevas tablas listas para aplicar los scripts necesarios.
  • 15. 12. Realizar los siguientes procedimientos almacenados (SP): a. Obtener Duración Mínima (MIN), máxima (MAX) y promedio (AVG) de los matrimonios. Para esto, utilizar campo dur_mat el cual contiene la duración de los matrimonios en años. No requiere gráfico estadístico. Aquí podemos que se creo un procedimiento almacenado para extraer el mínimo y el máximo donde se usaron los comando MIN y MAX para obtenerlos de los respectivos campos. CREATE PROCEDURE SP_Duracion_Matrimonios As begin SELECT MIN(D.dur_mat) as DuracionMinima, MAX(D.dur_mat) as DuracionMaxima , AVG(D.dur_mat)as Promedio FROM Divorcios_Unificada as D; end exec SP_Duracion_Matrimonios b. Listado de la Cantidad de Matrimonios durante el año 2017 agrupadas por meses. Gráfico Lineal. CREATE PROCEDURE SP_MATRI2017_MES As begin select COUNT(*) as MATRIMONIOS_2017, mes_insc AS MES into MatrimonioMes2017
  • 16. from Matrimonios_Unificada where anio_insc = '2017' GROUP BY mes_insc end En este procedimiento almacenado se creo para extraer infomacion de lo smatrimonios que se dieron en el 2017 usamos los comando COUNT para contar el total de matrimonios y luego el comando GROUP BY para agruparlos por mes Este es el resultado de la consulta Query Usando el Power Pivot para esxtraer información de la Base de datos y asi gestionar esa información.
  • 17. En este grafico lineal podemos observa que en el mes de diciembre se dieron mas matrimonios durante el 2017 c. Listado de cantidad de Matrimonios que se dieron en el año 2017 agrupadas por provincia. Gráfico de barras. CREATE PROCEDURE SP_MATRI2017_PROV As begin select COUNT(*) as MATRIMONIOS_2017, prov_insc AS PROVINCIA into MatrimonioProv2017 from Matrimonios_Unificada where anio_insc = '2017' GROUP BY prov_insc end EXEC SP_MATRI2017_PROV Este es el código analizado para mostrar todos los matrimonios en el año 2017 4371 5646 7271 4237 4496 4781 4744 5000 4540 5038 5054 5175 0 1000 2000 3000 4000 5000 6000 7000 8000 Matrimonios por mes 2017 Total
  • 18. Esta es la tabla resultante una vez ejecutado el procedimiento almacenado. Esta tabla resulta de la extracción de la Base de Datos a Excel a través de Power Pivot.
  • 19. En la Grafica podemos Observar que se llevaron acabo matrimonios con mas frecuencia en las provincias del Guayas Y Pichincha. d. Informe unificado de matrimonios y Divorcios durante el año 2016 agrupados por meses y Tipo (Matrimonio o Divorcio) con un gráfico lineal o de barras donde se visualicen ambos datos para ver el comportamiento de ambos registros. CREATE PROCEDURE SP_MES_TIPO As begin SELECT MONTH( convert(datetime,fecha_insc,101)) as num_mes, rtrim(ltrim(mes_insc)) as MES, NOMBRE AS TIPO, COUNT(*) AS TOTAL INTO INFORME2016 FROM Matrimonios2016 WHERE fecha_insc IS NOT NULL GROUP BY MONTH( convert(datetime,fecha_insc,101)), rtrim(ltrim(mes_insc)), nombre UNION SELECT MONTH( convert(datetime,fecha_insc,101)) as num_mes, rtrim(ltrim(mes_insc)) as MES, NOMBRE AS TIPO, COUNT(*) AS TOTAL FROM Divorcios2016 WHERE fecha_insc IS NOT NULL GROUP BY MONTH( convert(datetime,fecha_insc,101)), rtrim(ltrim(mes_insc)), nombre order BY MONTH( convert(datetime,fecha_insc,101)), rtrim(ltrim(mes_insc)), nombre end exec SP_MES_TIPO SELECT * FROM INFORME2016 SELECT * FROM INFORME2016 Where tipo = 'divorcio' SELECT * FROM INFORME2016 Where tipo = 'matrimonio' 0 2000 4000 6000 8000 10000 12000 14000 16000 18000 Azuay Bolívar Cañar Carchi Chimborazo Cotopaxi ElOro Esmeraldas Galápagos Guayas Imbabura Loja LosRíos Manabí MoronaSantiago Napo Orellana Pastaza Pichincha SantaElena SantoDomingode… Sucumbíos Tungurahua ZamoraChinchipe Matrimonios por provincia 2017 Total
  • 20. En este query usamos dos select para poder obtener esta tabla uno es para obtener los matrimonios y otro es para obtener los divorcios en el 2016 los cuales estan agrupados por numero de mes, mes y tipo, en los datos de la en especial en fecha_insc se tenia un problema no sepodia obtener el mes ya que elformato de lainformacion se encontraba con / (yyyy/mm/dd) lo cual no daba un error si usabamos el comando MONTH directamente asi q ante devimos usar el CONVERT y pasarlo a DATETIME Tabla resultante en la consulta de query anterior num_mes Mes Matrimonio Divorcio 1 Enero 3765 1985 2 Febrero 4958 1926 3 Marzo 4473 2168 4 Abril 4680 1755 5 Mayo 4189 1860 6 Junio 4344 2002 7 Julio 4911 1993 8 Agosto 5378 2443 9 Septiembre 5142 2423 10 Octubre 5050 2419 11 Noviembre 4434 2211
  • 21. 12 Diciembre 6414 2463 Tabla resultante usando el Power Pivot cuya informacion es extraida de la base datos Cifras y query usado enteriormente En este grafico podemos analizar que en el año 2016 hubo más matrimonios que divorcios. 13. Para los procedimientos almacenados realizar un tablero de control donde se visualicen los datos obtenidos de cada Stored Procedure y su gráfico estadístico en las herramientas Qlik View, Qlik Sense, Pentaho, Tableau, PowerBI, Reporting Services de Sql Server. La herramienta que se utilizó para esta práctica fue Qlik View 0 1000 2000 3000 4000 5000 6000 7000 Enero Febrero Marzo Abril Mayo Junio Julio Agosto Septiembre Octubre Noviembre Diciembre 1 2 3 4 5 6 7 8 9 10 11 12 Informe unificadode Matrimonios y Divorcios 2016 Matrimonio Divorcio
  • 22. Informe de los matrimonio y divorcios en el año 2016
  • 23. 14. OPCIONAL: En un solo procedimiento realizar lo siguiente: a. Edad promedio a la que se casan los varones. b. Edad promedio a la que se casan las mujeres. c. Edad promedio a la que se divorcian los varones. d. Edad promedio a la que se divorcian las mujeres. CREATE PROCEDURE SP_EDADES As begin select nombre as TIPO ,'Hombres' as Genero,AVG(edad_hom) as Edad_promedio,MIN(edad_hom) as Edad_Min,MAX(edad_hom) as Edad_Max from Matrimonios_Unificada
  • 24. where edad_hom IS NOT NULL GROUP BY nombre union select nombre as TIPO, 'Mujeres' as Genero,AVG(edad_muj) as Edad_promedio,MIN(edad_muj) as Min_Matri_MUJ,MAX(edad_muj) as Max_Matri_Muj from Matrimonios_Unificada where edad_muj IS NOT NULL GROUP BY nombre union select nombre as TIPO,'Hombres' as Genero ,AVG(edad_hom) as Edad_promedio,MIN(edad_hom) as Min_Matri_Hom,MAX(edad_hom) as Max_Matri_Hom from Divorcios_Unificada where edad_hom IS NOT NULL GROUP BY nombre union select nombre as TIPO,'Mujeres' as Genero ,AVG(edad_muj) as Edad_promedio,MIN(edad_muj) as Min_Matri_Hom,MAX(edad_muj) as Max_Matri_Muj from Divorcios_Unificada where edad_muj IS NOT NULL GROUP BY nombre end exec SP_EDADES 15. Realizar comentarios de los resultados del análisis de la información obtenida