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
  • add_filters_localoferta_matricula
  • development
  • docente-type-2-test
  • homologa
  • issue-752-aee
  • issue-811-region
  • master
  • postgres
  • simcaq-new-tables
9 results

Target

Select target project
  • tools/sql-scripts
1 result
Select Git revision
  • add_filters_localoferta_matricula
  • development
  • docente-type-2-test
  • homologa
  • issue-752-aee
  • issue-811-region
  • master
  • postgres
  • simcaq-new-tables
9 results
Show changes
--
--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 indigenas_schools_ag
AS
SELECT
escola.ano_censo,
escola.localizacao_diferenciada_id,
escola.agua_rede_publica,
escola.energia_rede_publica,
escola.esgoto_rede_publica,
escola.lixo_coleta_periodica,
estado.sigla,
escola.id,
CASE
WHEN matricula.etapa_ensino_id = 1 THEN 'Educação Infantil'
WHEN matricula.etapa_ensino_id = 2 THEN 'Educação Infantil'
WHEN matricula.etapa_ensino_id = 4 THEN 'Ensino Fundamental de 8 anos'
WHEN matricula.etapa_ensino_id = 5 THEN 'Ensino Fundamental de 8 anos'
WHEN matricula.etapa_ensino_id = 6 THEN 'Ensino Fundamental de 8 anos'
WHEN matricula.etapa_ensino_id = 7 THEN 'Ensino Fundamental de 8 anos'
WHEN matricula.etapa_ensino_id = 8 THEN 'Ensino Fundamental de 8 anos'
WHEN matricula.etapa_ensino_id = 9 THEN 'Ensino Fundamental de 8 anos'
WHEN matricula.etapa_ensino_id = 10 THEN 'Ensino Fundamental de 8 anos'
WHEN matricula.etapa_ensino_id = 11 THEN 'Ensino Fundamental de 8 anos'
WHEN matricula.etapa_ensino_id = 14 THEN 'Ensino Fundamental de 9 anos'
WHEN matricula.etapa_ensino_id = 15 THEN 'Ensino Fundamental de 9 anos'
WHEN matricula.etapa_ensino_id = 16 THEN 'Ensino Fundamental de 9 anos'
WHEN matricula.etapa_ensino_id = 17 THEN 'Ensino Fundamental de 9 anos'
WHEN matricula.etapa_ensino_id = 18 THEN 'Ensino Fundamental de 9 anos'
WHEN matricula.etapa_ensino_id = 19 THEN 'Ensino Fundamental de 9 anos'
WHEN matricula.etapa_ensino_id = 20 THEN 'Ensino Fundamental de 9 anos'
WHEN matricula.etapa_ensino_id = 21 THEN 'Ensino Fundamental de 9 anos'
WHEN matricula.etapa_ensino_id = 25 THEN 'Ensino Médio'
WHEN matricula.etapa_ensino_id = 26 THEN 'Ensino Médio'
WHEN matricula.etapa_ensino_id = 27 THEN 'Ensino Médio'
WHEN matricula.etapa_ensino_id = 28 THEN 'Ensino Médio'
WHEN matricula.etapa_ensino_id = 29 THEN 'Ensino Médio'
WHEN matricula.etapa_ensino_id = 30 THEN 'Curso Técnico Integrado'
WHEN matricula.etapa_ensino_id = 31 THEN 'Curso Técnico Integrado'
WHEN matricula.etapa_ensino_id = 32 THEN 'Curso Técnico Integrado'
WHEN matricula.etapa_ensino_id = 33 THEN 'Curso Técnico Integrado'
WHEN matricula.etapa_ensino_id = 34 THEN 'Curso Técnico Integrado'
WHEN matricula.etapa_ensino_id = 35 THEN 'Ensino Médio'
WHEN matricula.etapa_ensino_id = 36 THEN 'Ensino Médio'
WHEN matricula.etapa_ensino_id = 37 THEN 'Ensino Médio'
WHEN matricula.etapa_ensino_id = 38 THEN 'Ensino Médio'
WHEN matricula.etapa_ensino_id = 39 THEN 'Curso Técnico'
WHEN matricula.etapa_ensino_id = 40 THEN 'Curso Técnico'
WHEN matricula.etapa_ensino_id = 41 THEN 'Ensino Fundamental de 9 anos'
WHEN matricula.etapa_ensino_id = 43 THEN 'EJA (Ensino Fundamental)'
WHEN matricula.etapa_ensino_id = 44 THEN 'EJA (Ensino Fundamental)'
WHEN matricula.etapa_ensino_id = 45 THEN 'EJA (Ensino Médio)'
WHEN matricula.etapa_ensino_id = 46 THEN 'EJA (Ensino Fundamental)'
WHEN matricula.etapa_ensino_id = 47 THEN 'EJA (Ensino Fundamental)'
WHEN matricula.etapa_ensino_id = 48 THEN 'EJA (Ensino Médio)'
WHEN matricula.etapa_ensino_id = 49 THEN 'EJA (Ensino Fundamental)'
WHEN matricula.etapa_ensino_id = 50 THEN 'EJA (Ensino Fundamental)'
WHEN matricula.etapa_ensino_id = 51 THEN 'EJA (Ensino Fundamental)'
WHEN matricula.etapa_ensino_id = 52 THEN 'EJA (Ensino Médio)'
WHEN matricula.etapa_ensino_id = 53 THEN 'EJA (Ensino Fundamental)'
WHEN matricula.etapa_ensino_id = 54 THEN 'EJA (Ensino Fundamental)'
WHEN matricula.etapa_ensino_id = 55 THEN 'EJA (Ensino Médio)'
WHEN matricula.etapa_ensino_id = 57 THEN 'EJA (Curso Técnico Integrado)'
WHEN matricula.etapa_ensino_id = 58 THEN 'EJA (Ensino Fundamental)'
WHEN matricula.etapa_ensino_id = 59 THEN 'EJA (Curso Técnico Integrado)'
WHEN matricula.etapa_ensino_id = 60 THEN 'EJA (Curso Técnico Integrado)'
WHEN matricula.etapa_ensino_id = 61 THEN 'EJA (Curso Técnico Integrado)'
WHEN matricula.etapa_ensino_id = 62 THEN 'EJA (Curso Técnico Integrado)'
WHEN matricula.etapa_ensino_id = 63 THEN 'EJA (Curso Técnico Integrado)'
WHEN matricula.etapa_ensino_id = 65 THEN 'EJA (Ensino Fundamental)'
WHEN matricula.etapa_ensino_id = 67 THEN 'EJA (Curso Técnico Integrado)'
WHEN matricula.etapa_ensino_id = 68 THEN 'Curso Técnico'
WHEN matricula.etapa_ensino_id = 69 THEN 'EJA (Ensino Fundamental)'
WHEN matricula.etapa_ensino_id = 70 THEN 'EJA (Ensino Fundamental)'
WHEN matricula.etapa_ensino_id = 71 THEN 'EJA (Ensino Médio)'
WHEN matricula.etapa_ensino_id = 72 THEN 'EJA (Ensino Fundamental)'
WHEN matricula.etapa_ensino_id = 73 THEN 'EJA (Curso Técnico Integrado)'
WHEN matricula.etapa_ensino_id = 74 THEN 'EJA (Curso Técnico Integrado)'
ELSE 'NULL NO BANCO'
END AS etapa_ensino,
COUNT(*) AS Total
FROM
escola,
matricula,
estado
WHERE
((matricula.escola_id = escola.id) AND (matricula.ano_censo = escola.ano_censo)) AND
((escola.dependencia_adm_id = '2') OR (escola.dependencia_adm_id = '3')) AND
(escola.educacao_indigena = true) AND
(estado.id = escola.estado_id) AND
(escola.ano_censo >= 2012)
GROUP BY
escola.ano_censo,
escola.localizacao_diferenciada_id,
escola.agua_rede_publica,
escola.energia_rede_publica,
escola.esgoto_rede_publica,
escola.lixo_coleta_periodica,
escola.id,
etapa_ensino,
estado.sigla
ORDER BY
escola.ano_censo asc,
estado.sigla asc,
escola.localizacao_diferenciada_id asc,
escola.agua_rede_publica asc,
escola.energia_rede_publica asc,
escola.esgoto_rede_publica asc,
escola.lixo_coleta_periodica asc,
etapa_ensino asc
;
\ No newline at end of file
CREATE TABLE localoferta_ens_superior_matricula AS (
WITH
COD_CURSO AS
(SELECT aluno_ens_superior.cod_aluno, aluno_ens_superior.ano_censo, aluno_ens_superior.cod_uf_ies AS "aluno_cod_uf",
aluno_ens_superior.cod_municipio_ies AS "aluno_cod_municipio", aluno_ens_superior.cod_regiao_ies AS "aluno_regiao_ies",
aluno_ens_superior.idade_aluno_codigo, aluno_ens_superior.par_categoria_administrativa, aluno_ens_superior.cod_organizacao_academica,
aluno_ens_superior.par_cod_ocde_area_especifica, aluno_ens_superior.par_cod_ocde_area_geral, aluno_ens_superior.par_cod_ocde_area_detalhada,
aluno_ens_superior.nome_ocde_area_especifica, aluno_ens_superior.nome_ocde_area_geral, aluno_ens_superior.nome_ocde_area_detalhada,
aluno_ens_superior.cod_grau_academico, aluno_ens_superior.cod_modalidade_ensino, aluno_ens_superior.cod_turno_aluno,
aluno_ens_superior.par_cod_cor_raca_aluno, aluno_ens_superior.par_aluno_deficiencia_transtorno_superdotacao,
aluno_ens_superior.nome_ies AS "nome_ies", aluno_ens_superior.cod_ies AS "cod_ies", aluno_ens_superior.par_genero_aluno,
localoferta_ens_superior.cod_local_oferta, localoferta_ens_superior.cod_uf AS "localoferta_cod_uf", aluno_ens_superior.par_tipo_escola_ensino_medio,
localoferta_ens_superior.cod_municipio AS "localoferta_cod_municipio", localoferta_ens_superior.cod_regiao AS "localoferta_cod_regiao",
localoferta_ens_superior.nome AS "localoferta_nome", aluno_ens_superior.concluinte
FROM
aluno_ens_superior INNER JOIN localoferta_ens_superior ON (aluno_ens_superior.ano_censo=localoferta_ens_superior.ano_censo AND aluno_ens_superior.cod_curso=localoferta_ens_superior.cod_curso)
WHERE
(localoferta_ens_superior.cod_curso_polo IS NULL) AND
(aluno_ens_superior.cod_aluno_situacao = 2 OR aluno_ens_superior.cod_aluno_situacao = 6 OR aluno_ens_superior.matriculado = 1) AND
(aluno_ens_superior.cod_nivel_academico = 1)
),
COD_CURSO_POLO AS
(SELECT aluno_ens_superior.cod_aluno, aluno_ens_superior.ano_censo, aluno_ens_superior.cod_uf_ies AS "aluno_cod_uf",
aluno_ens_superior.cod_municipio_ies AS "aluno_cod_municipio", aluno_ens_superior.cod_regiao_ies AS "aluno_regiao_ies",
aluno_ens_superior.idade_aluno_codigo, aluno_ens_superior.par_categoria_administrativa, aluno_ens_superior.cod_organizacao_academica,
aluno_ens_superior.par_cod_ocde_area_especifica, aluno_ens_superior.par_cod_ocde_area_geral, aluno_ens_superior.par_cod_ocde_area_detalhada,
aluno_ens_superior.nome_ocde_area_especifica, aluno_ens_superior.nome_ocde_area_geral, aluno_ens_superior.nome_ocde_area_detalhada,
aluno_ens_superior.cod_grau_academico, aluno_ens_superior.cod_modalidade_ensino, aluno_ens_superior.cod_turno_aluno,
aluno_ens_superior.par_cod_cor_raca_aluno, aluno_ens_superior.par_aluno_deficiencia_transtorno_superdotacao,
aluno_ens_superior.nome_ies AS "nome_ies", aluno_ens_superior.cod_ies AS "cod_ies", aluno_ens_superior.par_genero_aluno,
localoferta_ens_superior.cod_local_oferta, localoferta_ens_superior.cod_uf AS "localoferta_cod_uf", aluno_ens_superior.par_tipo_escola_ensino_medio,
localoferta_ens_superior.cod_municipio AS "localoferta_cod_municipio", localoferta_ens_superior.cod_regiao AS "localoferta_cod_regiao",
localoferta_ens_superior.nome AS "localoferta_nome", aluno_ens_superior.concluinte
FROM
aluno_ens_superior INNER JOIN localoferta_ens_superior ON (aluno_ens_superior.ano_censo=localoferta_ens_superior.ano_censo AND aluno_ens_superior.cod_curso_polo=localoferta_ens_superior.cod_curso_polo)
WHERE
(localoferta_ens_superior.cod_curso_polo > 0) AND
(aluno_ens_superior.cod_aluno_situacao = 2 OR aluno_ens_superior.cod_aluno_situacao = 6 OR aluno_ens_superior.matriculado = 1) AND
(aluno_ens_superior.cod_nivel_academico = 1)
)
SELECT * FROM COD_CURSO
UNION ALL (SELECT * FROM COD_CURSO_POLO)
);
...@@ -18,7 +18,7 @@ You should have received a copy of the GNU General Public License ...@@ -18,7 +18,7 @@ You should have received a copy of the GNU General Public License
along with HOTMapper. If not, see <https://www.gnu.org/licenses/>. along with HOTMapper. If not, see <https://www.gnu.org/licenses/>.
*/ */
-- depends: matricula 2017+ -- depends: matricula 2018+
-- SimCAQ: tabela de projeção de matrículas -- -- SimCAQ: tabela de projeção de matrículas --
CREATE TABLE matricula_por_localizacao AS ( CREATE TABLE matricula_por_localizacao AS (
...@@ -28,8 +28,8 @@ WITH ...@@ -28,8 +28,8 @@ WITH
(SELECT count(*) as dia_total, ano_censo, estado_id, municipio_id, serie_ano_id, localizacao_id, (SELECT count(*) as dia_total, ano_censo, estado_id, municipio_id, serie_ano_id, localizacao_id,
dependencia_adm_id dependencia_adm_id
FROM matricula FROM matricula
WHERE tipo<=3 AND dependencia_adm_id < 4 AND ano_censo >= 2017 AND WHERE dependencia_adm_id < 4 AND ano_censo >= 2018 AND (tipo_atendimento_turma <= 2 OR tipo <= 3) AND
(turma_turno_id IN (1, 2, 99) OR turma_turno_id IS null) (turma_turno_id IN (1, 2, 4, 99) OR turma_turno_id IS null)
GROUP BY ano_censo, estado_id, municipio_id, serie_ano_id, localizacao_id, dependencia_adm_id GROUP BY ano_censo, estado_id, municipio_id, serie_ano_id, localizacao_id, dependencia_adm_id
ORDER BY ano_censo, estado_id, municipio_id, serie_ano_id, localizacao_id, dependencia_adm_id ORDER BY ano_censo, estado_id, municipio_id, serie_ano_id, localizacao_id, dependencia_adm_id
), ),
...@@ -38,7 +38,7 @@ WITH ...@@ -38,7 +38,7 @@ WITH
(SELECT count(*) as noite_total, ano_censo, estado_id, municipio_id, serie_ano_id, localizacao_id, (SELECT count(*) as noite_total, ano_censo, estado_id, municipio_id, serie_ano_id, localizacao_id,
dependencia_adm_id dependencia_adm_id
FROM matricula FROM matricula
WHERE tipo<=3 AND dependencia_adm_id < 4 AND ano_censo >= 2017 AND turma_turno_id = 3 WHERE dependencia_adm_id < 4 AND ano_censo >= 2018 AND turma_turno_id = 3 AND (tipo_atendimento_turma <= 2 OR tipo <= 3)
GROUP BY ano_censo, estado_id, municipio_id, serie_ano_id, localizacao_id, dependencia_adm_id GROUP BY ano_censo, estado_id, municipio_id, serie_ano_id, localizacao_id, dependencia_adm_id
ORDER BY ano_censo, estado_id, municipio_id, serie_ano_id, localizacao_id, dependencia_adm_id ORDER BY ano_censo, estado_id, municipio_id, serie_ano_id, localizacao_id, dependencia_adm_id
) )
...@@ -55,8 +55,7 @@ FROM matricula ...@@ -55,8 +55,7 @@ FROM matricula
AND matricula.municipio_id=night_count.municipio_id AND matricula.serie_ano_id=night_count.serie_ano_id AND matricula.municipio_id=night_count.municipio_id AND matricula.serie_ano_id=night_count.serie_ano_id
AND matricula.localizacao_id=night_count.localizacao_id AND matricula.localizacao_id=night_count.localizacao_id
AND matricula.dependencia_adm_id=night_count.dependencia_adm_id AND matricula.dependencia_adm_id=night_count.dependencia_adm_id
WHERE matricula.ano_censo >= 2017 AND matricula.serie_ano_id IS NOT NULL WHERE matricula.ano_censo >= 2018 AND matricula.serie_ano_id IS NOT NULL AND matricula.dependencia_adm_id < 4 AND (tipo_atendimento_turma <= 2 OR tipo <= 3)
AND matricula.tipo <= 3 AND matricula.dependencia_adm_id < 4
GROUP BY matricula.ano_censo, matricula.estado_id, matricula.municipio_id, matricula.serie_ano_id, dia_total, GROUP BY matricula.ano_censo, matricula.estado_id, matricula.municipio_id, matricula.serie_ano_id, dia_total,
noite_total, matricula.localizacao_id, matricula.dependencia_adm_id noite_total, matricula.localizacao_id, matricula.dependencia_adm_id
); );
......
This diff is collapsed.
...@@ -21,10 +21,65 @@ ...@@ -21,10 +21,65 @@
CREATE TABLE pnad_ag CREATE TABLE pnad_ag
AS AS
SELECT SELECT
pnad.cor_raca_original, 'pnad_continua' "tipo",
pnad.rede_ensino, CAST((pnad_cont.cor_raca) AS VARCHAR(255)) AS cor_raca,
pnad.area_rede_publica_ensino, CAST((pnad_cont.in_escola_rede) AS VARCHAR(255)) AS in_escola_rede,
pnad.curso_que_frequenta, CAST((pnad_cont.nivel_escola) AS VARCHAR(255)) AS nivel_escola,
estado.sigla,
estado.regiao_id,
ano_censo,
COUNT(*) AS total
FROM
pnad_cont
INNER JOIN
estado ON (pnad_cont.cod_uf=estado.id)
WHERE
(idade >= 18) AND
(idade <= 24)
GROUP BY
pnad_cont.cor_raca,
pnad_cont.in_escola_rede,
pnad_cont.nivel_escola,
estado.sigla,
estado.regiao_id,
ano_censo
UNION ALL
SELECT
'pnad_nao_continua' "tipo",
CASE
WHEN pnad.cor_raca_original = 2 THEN 1
WHEN pnad.cor_raca_original = 4 THEN 2
WHEN pnad.cor_raca_original = 6 THEN 3
WHEN pnad.cor_raca_original = 8 THEN 4
WHEN pnad.cor_raca_original = 0 THEN 5
WHEN pnad.cor_raca_original = 9 THEN 9
ELSE null
END AS cor_raca,
CASE
WHEN pnad.rede_ensino = 2 THEN 2
WHEN pnad.rede_ensino = 4 THEN 1
ELSE null
END AS in_escola_rede,
-- pnad.curso_que_frequenta AS nivel_escola,
CASE
WHEN pnad.curso_que_frequenta = 01 THEN 04
WHEN pnad.curso_que_frequenta = 02 THEN 06
WHEN pnad.curso_que_frequenta = 03 THEN 05
WHEN pnad.curso_que_frequenta = 04 THEN 07
WHEN pnad.curso_que_frequenta = 05 THEN 08
WHEN pnad.curso_que_frequenta = 06 THEN 03
WHEN pnad.curso_que_frequenta = 07 THEN 43 -- This is about creches
-- WHEN pnad.curso_que_frequenta = 08 THEN No longer exists
WHEN pnad.curso_que_frequenta = 09 THEN 02
-- WHEN pnad.curso_que_frequenta = 10 THEN No longer exists
WHEN pnad.curso_que_frequenta = 11 THEN 44 -- Old Pnad has masters and doctors degree as one information, this is to separate it from Pnad Cont differentiated degrees
ELSE null
END AS nivel_escola,
estado.sigla, estado.sigla,
estado.regiao_id, estado.regiao_id,
ano_censo, ano_censo,
...@@ -42,18 +97,17 @@ WHERE ...@@ -42,18 +97,17 @@ WHERE
GROUP BY GROUP BY
pnad.cor_raca_original , pnad.cor_raca_original ,
pnad.rede_ensino, pnad.rede_ensino,
pnad.area_rede_publica_ensino,
pnad.curso_que_frequenta, pnad.curso_que_frequenta,
estado.sigla, estado.sigla,
estado.regiao_id, estado.regiao_id,
ano_censo ano_censo
ORDER BY ORDER BY
pnad.cor_raca_original ASC, "tipo" ASC,
pnad.rede_ensino ASC, ano_censo ASC,
pnad.area_rede_publica_ensino ASC, cor_raca ASC,
pnad.curso_que_frequenta ASC, in_escola_rede ASC,
estado.sigla ASC, nivel_escola ASC,
estado.regiao_id ASC, sigla ASC,
ano_censo ASC regiao_id ASC
; ;
...@@ -26,32 +26,30 @@ CREATE TABLE projecao_matricula AS ( ...@@ -26,32 +26,30 @@ CREATE TABLE projecao_matricula AS (
WITH urban_day AS WITH urban_day AS
(SELECT count(*) as urbano_dia_total, ano_censo, estado_id, municipio_id, serie_ano_id (SELECT count(*) as urbano_dia_total, ano_censo, estado_id, municipio_id, serie_ano_id
FROM matricula FROM matricula
WHERE localizacao_id = 1 AND tipo <= 3 AND dependencia_adm_id IN (1, 2, 3) AND WHERE localizacao_id = 1 AND dependencia_adm_id IN (1, 2, 3) AND (turma_turno_id IN (1, 2, 4, 99) OR turma_turno_id IS null) AND
(turma_turno_id IN (1, 2, 99) OR turma_turno_id IS null) (tipo_atendimento_turma <= 2 OR tipo <= 3)
GROUP BY ano_censo, estado_id, municipio_id, serie_ano_id GROUP BY ano_censo, estado_id, municipio_id, serie_ano_id
ORDER BY ano_censo, ano_censo, estado_id, municipio_id, serie_ano_id), ORDER BY ano_censo, ano_censo, estado_id, municipio_id, serie_ano_id),
urban_night AS urban_night AS
(SELECT count(*) as urbano_noite_total, ano_censo, estado_id, municipio_id, serie_ano_id (SELECT count(*) as urbano_noite_total, ano_censo, estado_id, municipio_id, serie_ano_id
FROM matricula FROM matricula
WHERE localizacao_id = 1 AND tipo <= 3 AND dependencia_adm_id IN (1, 2, 3) AND WHERE localizacao_id = 1 AND dependencia_adm_id IN (1, 2, 3) AND turma_turno_id = 3 AND (tipo_atendimento_turma <= 2 OR tipo <= 3)
turma_turno_id = 3
GROUP BY ano_censo, estado_id, municipio_id, serie_ano_id GROUP BY ano_censo, estado_id, municipio_id, serie_ano_id
ORDER BY ano_censo, ano_censo, estado_id, municipio_id, serie_ano_id), ORDER BY ano_censo, ano_censo, estado_id, municipio_id, serie_ano_id),
rural_day AS rural_day AS
(SELECT count(*) as rural_dia_total, ano_censo, estado_id, municipio_id, serie_ano_id (SELECT count(*) as rural_dia_total, ano_censo, estado_id, municipio_id, serie_ano_id
FROM matricula FROM matricula
WHERE localizacao_id = 2 AND tipo <= 3 AND dependencia_adm_id IN (1, 2, 3) AND WHERE localizacao_id = 2 AND dependencia_adm_id IN (1, 2, 3) AND (turma_turno_id IN (1, 2, 4, 99) OR turma_turno_id IS null) AND
(turma_turno_id IN (1, 2, 99) OR turma_turno_id IS null) (tipo_atendimento_turma <= 2 OR tipo <= 3)
GROUP BY ano_censo, estado_id, municipio_id, serie_ano_id GROUP BY ano_censo, estado_id, municipio_id, serie_ano_id
ORDER BY ano_censo, ano_censo, estado_id, municipio_id, serie_ano_id), ORDER BY ano_censo, ano_censo, estado_id, municipio_id, serie_ano_id),
rural_night AS rural_night AS
(SELECT count(*) as rural_noite_total, ano_censo, estado_id, municipio_id, serie_ano_id (SELECT count(*) as rural_noite_total, ano_censo, estado_id, municipio_id, serie_ano_id
FROM matricula FROM matricula
WHERE localizacao_id = 2 AND tipo <= 3 AND dependencia_adm_id IN (1, 2, 3) AND WHERE localizacao_id = 2 AND dependencia_adm_id IN (1, 2, 3) AND turma_turno_id = 3 AND (tipo_atendimento_turma <= 2 OR tipo <= 3)
turma_turno_id = 3
GROUP BY ano_censo, estado_id, municipio_id, serie_ano_id GROUP BY ano_censo, estado_id, municipio_id, serie_ano_id
ORDER BY ano_censo, ano_censo, estado_id, municipio_id, serie_ano_id) ORDER BY ano_censo, ano_censo, estado_id, municipio_id, serie_ano_id)
...@@ -71,7 +69,7 @@ FROM matricula ...@@ -71,7 +69,7 @@ FROM matricula
GROUP BY GROUP BY
matricula.ano_censo, matricula.estado_id, matricula.municipio_id, etapa_ensino_escola_ano_id, urbano_dia_total, matricula.ano_censo, matricula.estado_id, matricula.municipio_id, etapa_ensino_escola_ano_id, urbano_dia_total,
rural_dia_total, urbano_noite_total, rural_noite_total rural_dia_total, urbano_noite_total, rural_noite_total
HAVING matricula.ano_censo >= 2017 AND etapa_ensino_escola_ano_id IS NOT NULL HAVING matricula.ano_censo >= 2018 AND etapa_ensino_escola_ano_id IS NOT NULL
ORDER BY matricula.ano_censo, matricula.estado_id, matricula.municipio_id, etapa_ensino_escola_ano_id ORDER BY matricula.ano_censo, matricula.estado_id, matricula.municipio_id, etapa_ensino_escola_ano_id
); );
......
--
--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 traditional_families_ag
AS
SELECT
familias_cadunico_2.ano_censo,
familias_cadunico_2.id_familia,
familias_cadunico_2.ind_tipo_familia,
familias_cadunico_2.renda_media,
familias_cadunico_2.cod_especie_domicilio,
pessoas_cadunico_2.codigo_ibge,
pessoas_cadunico_2.concluiu_frequentou,
pessoas_cadunico_2.ano_serie_frequentou,
pessoas_cadunico_2.curso_frequentou,
geographic.nome_regiao,
geographic.sigla_estado,
COUNT(*) AS Total
FROM
familias_cadunico_2
INNER JOIN
pessoas_cadunico_2
ON (familias_cadunico_2.id_familia=pessoas_cadunico_2.id_familia AND familias_cadunico_2.ano_censo=pessoas_cadunico_2.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_2.codigo_ibge)
WHERE
ind_tipo_familia IN (101,201,202,203,204) AND
pessoas_cadunico_2.ano_censo = familias_cadunico_2.ano_censo AND
pessoas_cadunico_2.id_familia = familias_cadunico_2.id_familia
GROUP BY
familias_cadunico_2.ano_censo,
familias_cadunico_2.id_familia,
familias_cadunico_2.ind_tipo_familia,
familias_cadunico_2.renda_media,
familias_cadunico_2.cod_especie_domicilio,
pessoas_cadunico_2.codigo_ibge,
pessoas_cadunico_2.concluiu_frequentou,
pessoas_cadunico_2.ano_serie_frequentou,
pessoas_cadunico_2.curso_frequentou,
geographic.nome_regiao,
geographic.sigla_estado
ORDER BY
familias_cadunico_2.ano_censo ASC,
familias_cadunico_2.ind_tipo_familia,
familias_cadunico_2.id_familia,
familias_cadunico_2.renda_media ASC,
familias_cadunico_2.cod_especie_domicilio,
pessoas_cadunico_2.codigo_ibge,
pessoas_cadunico_2.concluiu_frequentou,
pessoas_cadunico_2.ano_serie_frequentou,
pessoas_cadunico_2.curso_frequentou,
geographic.nome_regiao ASC,
geographic.sigla_estado ASC
;
\ No newline at end of file