Skip to content
Snippets Groups Projects

Compare revisions

Changes are shown as if the source revision was being merged into the target revision. Learn more about comparing revisions.

Source

Select target project
No results found
Select Git revision

Target

Select target project
  • tools/sql-scripts
1 result
Select Git revision
Show changes
Commits on Source (11)
......@@ -66,9 +66,10 @@ Esse script tem como objetivo facilitar a criação do banco de dados do projeto
* fies
* institutionFIES
#### SIM
* homicidios
#### SEM GRUPO
* Unify_States
* esf_quilombolas
* brasil
* cad_unico
* cad_unico_quilombas_metrics
* esf_quilombolas
\ No newline at end of file
......@@ -26,6 +26,8 @@ SELECT
familias_cadunico.ind_tipo_familia,
familias_cadunico.cod_local_domicilio,
pessoas_cadunico.codigo_ibge,
geographic.nome_regiao,
geographic.sigla_estado,
COUNT(*) AS Total
FROM
......@@ -33,6 +35,18 @@ FROM
INNER JOIN
pessoas_cadunico
ON (familias_cadunico.id_familia=pessoas_cadunico.id_familia AND familias_cadunico.ano_censo=pessoas_cadunico.ano_censo)
INNER JOIN
-- Geogrphic (State/Region) data
(
SELECT
municipio.id AS municipio_id,
regiao.nome AS nome_regiao,
estado.sigla AS sigla_estado
FROM
estado INNER JOIN municipio ON (estado.id = municipio.estado_id)
INNER JOIN regiao ON (regiao.id = estado.regiao_id)
) AS geographic ON (geographic.municipio_id = pessoas_cadunico.codigo_ibge)
WHERE
ind_tipo_familia = 203
......@@ -42,12 +56,16 @@ GROUP BY
familias_cadunico.cod_especie_domicilio,
familias_cadunico.ind_tipo_familia,
familias_cadunico.cod_local_domicilio,
pessoas_cadunico.codigo_ibge
pessoas_cadunico.codigo_ibge,
geographic.nome_regiao,
geographic.sigla_estado
ORDER BY
familias_cadunico.ano_censo ,
familias_cadunico.cod_especie_domicilio ,
familias_cadunico.ind_tipo_familia,
familias_cadunico.cod_local_domicilio,
pessoas_cadunico.codigo_ibge
pessoas_cadunico.codigo_ibge,
geographic.nome_regiao ASC,
geographic.sigla_estado ASC
;
\ No newline at end of file
......@@ -26,6 +26,8 @@ SELECT
pessoas_cadunico.concluiu_frequentou,
pessoas_cadunico.ano_serie_frequentou,
pessoas_cadunico.curso_frequentou,
geographic.nome_regiao,
geographic.sigla_estado,
COUNT(*) AS Total
FROM
......@@ -35,7 +37,18 @@ FROM
INNER JOIN
pessoas_cadunico
ON (familias_cadunico.id_familia=pessoas_cadunico.id_familia AND familias_cadunico.ano_censo=pessoas_cadunico.ano_censo)
INNER JOIN
-- Geogrphic (State/Region) data
(
SELECT
municipio.id AS municipio_id,
regiao.nome AS nome_regiao,
estado.sigla AS sigla_estado
FROM
estado INNER JOIN municipio ON (estado.id = municipio.estado_id)
INNER JOIN regiao ON (regiao.id = estado.regiao_id)
) AS geographic ON (geographic.municipio_id = pessoas_cadunico.codigo_ibge)
WHERE
ind_tipo_familia = 203
......@@ -46,25 +59,16 @@ GROUP BY
familias_cadunico.ind_tipo_familia,
pessoas_cadunico.concluiu_frequentou,
pessoas_cadunico.ano_serie_frequentou,
pessoas_cadunico.curso_frequentou
pessoas_cadunico.curso_frequentou,
geographic.nome_regiao,
geographic.sigla_estado
ORDER BY
familias_cadunico.ano_censo ASC,
familias_cadunico.ind_tipo_familia,
pessoas_cadunico.concluiu_frequentou ASC,
pessoas_cadunico.ano_serie_frequentou ASC,
pessoas_cadunico.curso_frequentou ASC
pessoas_cadunico.curso_frequentou ASC,
geographic.nome_regiao ASC,
geographic.sigla_estado ASC
;
\ No newline at end of file
......@@ -24,12 +24,28 @@ SELECT
familias_cadunico.ano_censo,
familias_cadunico.ind_tipo_familia,
familias_cadunico.renda_media,
pessoas_cadunico.codigo_ibge,
geographic.nome_regiao,
geographic.sigla_estado,
COUNT(*) AS Total
FROM
-- Data from CadUnico
familias_cadunico
INNER JOIN
pessoas_cadunico
ON (familias_cadunico.id_familia=pessoas_cadunico.id_familia AND familias_cadunico.ano_censo=pessoas_cadunico.ano_censo)
INNER JOIN
-- Geogrphic (State/Region) data
(
SELECT
municipio.id AS municipio_id,
regiao.nome AS nome_regiao,
estado.sigla AS sigla_estado
FROM
estado INNER JOIN municipio ON (estado.id = municipio.estado_id)
INNER JOIN regiao ON (regiao.id = estado.regiao_id)
) AS geographic ON (geographic.municipio_id = pessoas_cadunico.codigo_ibge)
WHERE
ind_tipo_familia = 203
......@@ -38,10 +54,16 @@ WHERE
GROUP BY
familias_cadunico.ano_censo,
familias_cadunico.ind_tipo_familia,
familias_cadunico.renda_media
familias_cadunico.renda_media,
pessoas_cadunico.codigo_ibge,
geographic.nome_regiao,
geographic.sigla_estado
ORDER BY
familias_cadunico.ano_censo ASC,
familias_cadunico.ind_tipo_familia,
familias_cadunico.renda_media ASC
familias_cadunico.renda_media ASC,
pessoas_cadunico.codigo_ibge,
geographic.nome_regiao ASC,
geographic.sigla_estado ASC
;
\ No newline at end of file
File moved
--
--Copyright (C) 2019 Centro de Computacao Cientifica e Software Livre
--Departamento de Informatica - Universidade Federal do Parana - C3SL/UFPR
--
--This file is part of SMPPIR-Tables.
--
--SMPPIR-Tables is free software: you can redistribute it and/or modify
--it under the terms of the GNU General Public License as published by
--the Free Software Foundation, either version 3 of the License, or
--(at your option) any later version.
--
--SMPPIR-Tables is distributed in the hope that it will be useful,
--but WITHOUT ANY WARRANTY; without even the implied warranty of
--MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
--GNU General Public License for more details.
--
--You should have received a copy of the GNU General Public License
--along with SMPPIR-Tables. If not, see <https://www.gnu.org/licenses/>.
--
CREATE TABLE ciganos_culture_ag
AS
SELECT
familias_cadunico.ano_censo,
familias_cadunico.cod_especie_domicilio,
familias_cadunico.ind_tipo_familia,
familias_cadunico.cod_local_domicilio,
pessoas_cadunico.codigo_ibge,
geographic.nome_regiao,
geographic.sigla_estado,
COUNT(*) AS Total
FROM
familias_cadunico
INNER JOIN
pessoas_cadunico
ON (familias_cadunico.id_familia=pessoas_cadunico.id_familia AND familias_cadunico.ano_censo=pessoas_cadunico.ano_censo)
INNER JOIN
-- Geogrphic (State/Region) data
(
SELECT
municipio.id AS municipio_id,
regiao.nome AS nome_regiao,
estado.sigla AS sigla_estado
FROM
estado INNER JOIN municipio ON (estado.id = municipio.estado_id)
INNER JOIN regiao ON (regiao.id = estado.regiao_id)
) AS geographic ON (geographic.municipio_id = pessoas_cadunico.codigo_ibge)
WHERE
ind_tipo_familia = 101
GROUP BY
familias_cadunico.ano_censo,
familias_cadunico.cod_especie_domicilio,
familias_cadunico.ind_tipo_familia,
familias_cadunico.cod_local_domicilio,
pessoas_cadunico.codigo_ibge,
geographic.nome_regiao,
geographic.sigla_estado
ORDER BY
familias_cadunico.ano_censo ,
familias_cadunico.cod_especie_domicilio ,
familias_cadunico.ind_tipo_familia,
familias_cadunico.cod_local_domicilio,
pessoas_cadunico.codigo_ibge,
geographic.nome_regiao ASC,
geographic.sigla_estado ASC
;
\ No newline at end of file
--
--Copyright (C) 2019 Centro de Computacao Cientifica e Software Livre
--Departamento de Informatica - Universidade Federal do Parana - C3SL/UFPR
--
--This file is part of SMPPIR-Tables.
--
--SMPPIR-Tables is free software: you can redistribute it and/or modify
--it under the terms of the GNU General Public License as published by
--the Free Software Foundation, either version 3 of the License, or
--(at your option) any later version.
--
--SMPPIR-Tables is distributed in the hope that it will be useful,
--but WITHOUT ANY WARRANTY; without even the implied warranty of
--MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
--GNU General Public License for more details.
--
--You should have received a copy of the GNU General Public License
--along with SMPPIR-Tables. If not, see <https://www.gnu.org/licenses/>.
--
CREATE TABLE ciganos_rights_ag
AS
SELECT
familias_cadunico.ano_censo,
familias_cadunico.ind_tipo_familia,
pessoas_cadunico.concluiu_frequentou,
pessoas_cadunico.ano_serie_frequentou,
pessoas_cadunico.curso_frequentou,
geographic.nome_regiao,
geographic.sigla_estado,
COUNT(*) AS Total
FROM
-- Data from CadUnico
familias_cadunico
INNER JOIN
pessoas_cadunico
ON (familias_cadunico.id_familia=pessoas_cadunico.id_familia AND familias_cadunico.ano_censo=pessoas_cadunico.ano_censo)
INNER JOIN
-- Geogrphic (State/Region) data
(
SELECT
municipio.id AS municipio_id,
regiao.nome AS nome_regiao,
estado.sigla AS sigla_estado
FROM
estado INNER JOIN municipio ON (estado.id = municipio.estado_id)
INNER JOIN regiao ON (regiao.id = estado.regiao_id)
) AS geographic ON (geographic.municipio_id = pessoas_cadunico.codigo_ibge)
WHERE
ind_tipo_familia = 101
GROUP BY
familias_cadunico.ano_censo,
familias_cadunico.ind_tipo_familia,
pessoas_cadunico.concluiu_frequentou,
pessoas_cadunico.ano_serie_frequentou,
pessoas_cadunico.curso_frequentou,
geographic.nome_regiao,
geographic.sigla_estado
ORDER BY
familias_cadunico.ano_censo ASC,
familias_cadunico.ind_tipo_familia,
pessoas_cadunico.concluiu_frequentou ASC,
pessoas_cadunico.ano_serie_frequentou ASC,
pessoas_cadunico.curso_frequentou ASC,
geographic.nome_regiao ASC,
geographic.sigla_estado ASC
;
\ No newline at end of file
......@@ -18,28 +18,53 @@
--along with SMPPIR-Tables. If not, see <https://www.gnu.org/licenses/>.
--
CREATE TABLE esf_quilombolas AS
CREATE TABLE ciganos_sustentability_ag
AS
SELECT
brasil.municipio_id AS municipio_id,
brasil.nome_municipio AS nome_municipio,
brasil.estado_id AS estado_id,
brasil.sigla_estado AS sigla_estado,
brasil.nome_estado AS nome_estado,
brasil.regiao_id AS regiao_id,
brasil.nome_regiao AS nome_regiao,
equipes_saude.cod_municipio AS id_municipio_equipes,
equipes_saude.no_referencia AS nome_equipe,
equipes_saude.ano_censo AS ano_censo
familias_cadunico.ano_censo,
familias_cadunico.ind_tipo_familia,
familias_cadunico.renda_media,
pessoas_cadunico.codigo_ibge,
geographic.nome_regiao,
geographic.sigla_estado,
COUNT(*) AS Total
FROM
familias_cadunico
INNER JOIN
pessoas_cadunico
ON (familias_cadunico.id_familia=pessoas_cadunico.id_familia AND familias_cadunico.ano_censo=pessoas_cadunico.ano_censo)
INNER JOIN
-- Geogrphic (State/Region) data
(
SELECT
municipio.id AS municipio_id,
regiao.nome AS nome_regiao,
estado.sigla AS sigla_estado
FROM
(SELECT municipio_id AS id, (municipio_id / 10) AS id_6 FROM brasil) AS novo_id,
equipes_saude,
brasil
estado INNER JOIN municipio ON (estado.id = municipio.estado_id)
INNER JOIN regiao ON (regiao.id = estado.regiao_id)
) AS geographic ON (geographic.municipio_id = pessoas_cadunico.codigo_ibge)
WHERE
novo_id.id = brasil.municipio_id AND
equipes_saude.cod_municipio = novo_id.id_6 AND
equipes_saude.tp_pop_assist_quilomb = 1
ind_tipo_familia = 101
GROUP BY
familias_cadunico.ano_censo,
familias_cadunico.ind_tipo_familia,
familias_cadunico.renda_media,
pessoas_cadunico.codigo_ibge,
geographic.nome_regiao,
geographic.sigla_estado
ORDER BY
equipes_saude.ano_censo,
brasil.regiao_id,
brasil.estado_id
familias_cadunico.ano_censo ASC,
familias_cadunico.ind_tipo_familia,
familias_cadunico.renda_media ASC,
pessoas_cadunico.codigo_ibge,
geographic.nome_regiao ASC,
geographic.sigla_estado ASC
;
\ No newline at end of file
......@@ -55,7 +55,11 @@ FIES = [
'fies.sql',
'institutionFIES.sql'
]
ALL_GROUPS_SMPPIR = INEP + PROUNI + PNAD + CADUNICO + FIES
SIM = [
'homicidios.sql'
]
ALL_GROUPS_SMPPIR = INEP + PROUNI + PNAD + CADUNICO + FIES + SIM
# ---------------------------------------------------------------------------------------#
# ---------------------------------------------------------------------------------------#
......@@ -92,6 +96,7 @@ DATA_GROUP = {
"PNAD": PNAD,
"CADUNICO": CADUNICO,
"FIES": FIES,
"SIM": SIM,
"ALL_GROUPS_SMPPIR": ALL_GROUPS_SMPPIR,
"BASE": BASE,
"SIMCAQ_AGGREGATE": SIMCAQ_AGGREGATE
......@@ -122,5 +127,6 @@ DATABASE_TABLE_NAME = {
'courseFIES.sql': 'course_fies_ag',
'fies.sql': 'fies_ag',
'institutionFIES.sql': 'institution_fies_ag',
'idm.sql': 'indice_distribuicao_matriculas'
'idm.sql': 'indice_distribuicao_matriculas',
'homicidios.sql': 'taxa_homicidios'
}
CREATE table taxa_homicidios
AS
SELECT
sim.obito,
pnad.pop_ibge,
pnad.pop_pnad,
pnad.pop_filtrada as filtro_pnad,
cast((cast(pop_ibge as float)/cast(pop_pnad as float))*cast(pop_filtrada as float) as integer) as filtro_ibge,
cast(obito as float)*100000/((cast(pop_ibge as float)/cast(pop_pnad as float))*cast(pop_filtrada as float)) as taxa_homicidio,
sim.ano_obito as ano,
sim."ocor_SIGLA_UF" as uf,
sim.def_raca_cor as raca_cor
FROM
(select count(*) as obito, * from sim
where "CIRCOBITO" = 3
group by
ano_obito,
"ocor_CODIGO_UF",
"ocor_SIGLA_UF",
def_raca_cor,
"RACACOR"
) as sim
INNER JOIN
(select * from
(select * , count(*) as pop_filtrada from
pnad_cont
inner join
(select *, count(*) as pop_pnad from pnad_cont
group by ano_censo, cod_uf
) as pnd
on
pnad_cont.ano_censo = pnd.ano_censo and
pnad_cont.cod_uf = pnd.cod_uf
group by
pnad_cont.ano_censo,
pnad_cont.cod_uf,
pnad_cont.cor_raca,
pnd.pop_pnad
) as pnad
inner join
(select *, sum(ibge_populacao.populacao) as pop_ibge
from
ibge_populacao
group by
ibge_populacao.estado_id,
ibge_populacao.ano_censo
) as pop
on
pnad.ano_censo = pop.ano_censo and
pnad.cod_uf = pop.estado_id
group by
pnad.ano_censo,
pnad.cod_uf,
pnad.cor_raca,
pop.pop_ibge,
pnad.pop_pnad,
pnad.pop_filtrada
) as pnad
ON
sim.ano_obito = pnad.ano_censo and
sim."ocor_CODIGO_UF" = pnad.cod_uf and
sim."RACACOR" = pnad.cor_raca
group by
sim.ano_obito,
sim.obito, pnad.pop_filtrada,
sim."ocor_SIGLA_UF",
sim.def_raca_cor,
pnad.pop_ibge,
pnad.pop_pnad
order by
sim."ocor_SIGLA_UF",
sim.ano_obito
;
......@@ -24,7 +24,8 @@ SELECT
inst.ano_censo,
nome_ies,
cod_ies,
sigla_uf_ies
sigla_uf_ies,
CASE WHEN ("cod_uf_ies"= 11 OR "cod_uf_ies"=12 OR "cod_uf_ies"=13 OR "cod_uf_ies"=14 OR "cod_uf_ies"=15 OR "cod_uf_ies"=16 OR "cod_uf_ies"=17) THEN 'Norte' WHEN ("cod_uf_ies"= 21 OR "cod_uf_ies"=22 OR "cod_uf_ies"=23 OR "cod_uf_ies"=24 OR "cod_uf_ies"=25 OR "cod_uf_ies"=26 OR "cod_uf_ies"=27 OR "cod_uf_ies"=28 OR "cod_uf_ies"=29) THEN 'Nordeste' WHEN ("cod_uf_ies"= 31 OR "cod_uf_ies"=32 OR "cod_uf_ies"=33 OR "cod_uf_ies"=35) THEN 'Sudeste' WHEN ("cod_uf_ies"= 41 OR "cod_uf_ies"=42 OR "cod_uf_ies"=43) THEN 'Sul' WHEN ("cod_uf_ies"= 50 OR "cod_uf_ies"=51 OR "cod_uf_ies"=52 OR "cod_uf_ies"=53) THEN 'Centro-Oeste' ELSE null END AS region
FROM
ies_ens_superior as inst
......@@ -43,10 +44,12 @@ GROUP BY
inst.ano_censo,
nome_ies,
cod_ies,
sigla_uf_ies
sigla_uf_ies,
region
ORDER BY
inst.ano_censo ASC,
nome_ies ASC,
sigla_uf_ies
sigla_uf_ies,
region
;
\ No newline at end of file
......@@ -23,13 +23,16 @@ AS
SELECT
fies_temp.ano_censo,
fies_temp.codigo_ies,
fies_temp.nome_ies
fies_temp.nome_ies,
sigla_uf,
CASE WHEN ("sigla_uf"= 'RO' OR "sigla_uf"='AC' OR "sigla_uf"='AM' OR "sigla_uf"='RR' OR "sigla_uf"='PA' OR "sigla_uf"='AP' OR "sigla_uf"='TO') THEN 'Norte' WHEN ("sigla_uf"= 'MA' OR "sigla_uf"='PI' OR "sigla_uf"='CE' OR "sigla_uf"='RN' OR "sigla_uf"='PB' OR "sigla_uf"='PE' OR "sigla_uf"='AL' OR "sigla_uf"='SE' OR "sigla_uf"='BA') THEN 'Nordeste' WHEN ("sigla_uf"= 'MG' OR "sigla_uf"='ES' OR "sigla_uf"='RJ' OR "sigla_uf"='SP') THEN 'Sudeste' WHEN ("sigla_uf"= 'PR' OR "sigla_uf"='SC' OR "sigla_uf"='RS') THEN 'Sul' WHEN ("sigla_uf"= 'MS' OR "sigla_uf"='MT' OR "sigla_uf"='GO' OR "sigla_uf"='DF') THEN 'Centro-Oeste' ELSE null END AS region
FROM
(
SELECT
distinct codigo_ies,
nome_ies,
sigla_uf,
ano_censo
FROM
fies
......@@ -39,9 +42,13 @@ FROM
GROUP BY
fies_temp.ano_censo,
fies_temp.codigo_ies,
fies_temp.nome_ies
fies_temp.nome_ies,
sigla_uf,
region
ORDER BY
fies_temp.ano_censo ASC,
fies_temp.codigo_ies ASC
fies_temp.codigo_ies ASC,
sigla_uf,
region
;
\ No newline at end of file
......@@ -22,22 +22,29 @@ CREATE TABLE institution_prouni_ag
AS
SELECT
prouni_temp.ano_censo,
prouni_temp.nome_ies
prouni_temp.nome_ies,
sigla_uf,
CASE WHEN ("sigla_uf"= 'RO' OR "sigla_uf"='AC' OR "sigla_uf"='AM' OR "sigla_uf"='RR' OR "sigla_uf"='PA' OR "sigla_uf"='AP' OR "sigla_uf"='TO') THEN 'Norte' WHEN ("sigla_uf"= 'MA' OR "sigla_uf"='PI' OR "sigla_uf"='CE' OR "sigla_uf"='RN' OR "sigla_uf"='PB' OR "sigla_uf"='PE' OR "sigla_uf"='AL' OR "sigla_uf"='SE' OR "sigla_uf"='BA') THEN 'Nordeste' WHEN ("sigla_uf"= 'MG' OR "sigla_uf"='ES' OR "sigla_uf"='RJ' OR "sigla_uf"='SP') THEN 'Sudeste' WHEN ("sigla_uf"= 'PR' OR "sigla_uf"='SC' OR "sigla_uf"='RS') THEN 'Sul' WHEN ("sigla_uf"= 'MS' OR "sigla_uf"='MT' OR "sigla_uf"='GO' OR "sigla_uf"='DF') THEN 'Centro-Oeste' ELSE null END AS region
FROM
(
SELECT
distinct(nome_ies),
ano_censo
ano_censo,
sigla_uf
FROM
fies
) AS prouni_temp
GROUP BY
prouni_temp.ano_censo,
prouni_temp.nome_ies
prouni_temp.nome_ies,
sigla_uf,
region
ORDER BY
prouni_temp.ano_censo ASC,
prouni_temp.nome_ies ASC
prouni_temp.nome_ies ASC,
sigla_uf,
region
;
\ No newline at end of file