Skip to content
Snippets Groups Projects
Commit 8788fa8c authored by Pietro Cavassin's avatar Pietro Cavassin
Browse files

Merge branch 'add-columns' into homologa_simcaq

parents 01154852 963a1ed0
Branches
No related tags found
No related merge requests found
...@@ -12,13 +12,12 @@ WITH ...@@ -12,13 +12,12 @@ WITH
aluno_ens_superior.nome_ies AS "nome_ies", aluno_ens_superior.cod_ies AS "cod_ies", aluno_ens_superior.par_genero_aluno, 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_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.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 localoferta_ens_superior.nome AS "localoferta_nome", aluno_ens_superior.concluinte AS "concluinte", aluno_ens_superior.cod_aluno_situacao AS "cod_aluno_situacao", aluno_ens_superior.ingressante AS "ingressante",
aluno_ens_superior.cod_curso AS "cod_curso", aluno_ens_superior.cod_nivel_academico AS "cod_nivel_academico", aluno_ens_superior.matriculado AS "matriculado" -- adicionado para poder ser consultado na api.
FROM 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) 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 WHERE
(localoferta_ens_superior.cod_curso_polo IS NULL) AND (localoferta_ens_superior.cod_curso_polo IS NULL)
(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 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", (SELECT aluno_ens_superior.cod_aluno, aluno_ens_superior.ano_censo, aluno_ens_superior.cod_uf_ies AS "aluno_cod_uf",
...@@ -31,13 +30,12 @@ WITH ...@@ -31,13 +30,12 @@ WITH
aluno_ens_superior.nome_ies AS "nome_ies", aluno_ens_superior.cod_ies AS "cod_ies", aluno_ens_superior.par_genero_aluno, 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_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.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 localoferta_ens_superior.nome AS "localoferta_nome", aluno_ens_superior.concluinte AS "concluinte", aluno_ens_superior.cod_aluno_situacao AS "cod_aluno_situacao", aluno_ens_superior.ingressante AS "ingressante",
aluno_ens_superior.cod_curso AS "cod_curso", aluno_ens_superior.cod_nivel_academico AS "cod_nivel_academico", aluno_ens_superior.matriculado AS "matriculado"
FROM 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) 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 WHERE
(localoferta_ens_superior.cod_curso_polo > 0) AND (localoferta_ens_superior.cod_curso_polo > 0)
(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 SELECT * FROM COD_CURSO
......
...@@ -26,46 +26,49 @@ CREATE TABLE matricula_por_localizacao AS ( ...@@ -26,46 +26,49 @@ CREATE TABLE matricula_por_localizacao AS (
WITH WITH
day_count AS day_count AS
(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, escola_id
FROM matricula FROM matricula
WHERE dependencia_adm_id < 4 AND ano_censo >= 2018 AND (tipo_atendimento_turma <= 2 OR tipo <= 3) 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, 4, 99) OR turma_turno_id IS null) (turma_turno_id IN (1, 2, 4) 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, escola_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, escola_id
), ),
night_count AS night_count AS
(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, escola_id
FROM matricula FROM matricula
WHERE dependencia_adm_id < 4 AND ano_censo >= 2018 AND turma_turno_id = 3 AND (tipo_atendimento_turma <= 2 OR tipo <= 3) WHERE dependencia_adm_id < 4 AND ano_censo >= 2018 AND (tipo_atendimento_turma <= 2 OR tipo <= 3) AND
GROUP BY ano_censo, estado_id, municipio_id, serie_ano_id, localizacao_id, dependencia_adm_id turma_turno_id = 3
ORDER 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, escola_id
ORDER BY ano_censo, estado_id, municipio_id, serie_ano_id, localizacao_id, dependencia_adm_id, escola_id
) )
SELECT matricula.ano_censo, matricula.estado_id, matricula.municipio_id, SELECT matricula.ano_censo, matricula.estado_id, matricula.municipio_id,
matricula.serie_ano_id, COALESCE(dia_total, 0) AS dia_total, matricula.serie_ano_id, COALESCE(dia_total, 0) AS dia_total,
COALESCE(noite_total, 0) AS noite_total, matricula.localizacao_id, matricula.dependencia_adm_id COALESCE(noite_total, 0) AS noite_total, matricula.localizacao_id, matricula.dependencia_adm_id,
matricula.escola_id
FROM matricula FROM matricula
LEFT JOIN day_count ON matricula.ano_censo=day_count.ano_censo AND matricula.estado_id=day_count.estado_id LEFT JOIN day_count ON matricula.ano_censo=day_count.ano_censo AND matricula.estado_id=day_count.estado_id
AND matricula.municipio_id=day_count.municipio_id AND matricula.serie_ano_id=day_count.serie_ano_id AND matricula.municipio_id=day_count.municipio_id AND matricula.serie_ano_id=day_count.serie_ano_id
AND matricula.localizacao_id=day_count.localizacao_id AND matricula.localizacao_id=day_count.localizacao_id
AND matricula.dependencia_adm_id=day_count.dependencia_adm_id AND matricula.dependencia_adm_id=day_count.dependencia_adm_id AND matricula.escola_id=day_count.escola_id
LEFT JOIN night_count ON matricula.ano_censo=night_count.ano_censo AND matricula.estado_id=night_count.estado_id LEFT JOIN night_count ON matricula.ano_censo=night_count.ano_censo AND matricula.estado_id=night_count.estado_id
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 AND matricula.escola_id=night_count.escola_id
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) 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 turma_turno_id <> 99
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, matricula.escola_id
); );
-- Create serie mod -- Create serie mod
INSERT INTO INSERT INTO
matricula_por_localizacao(ano_censo, estado_id, municipio_id, serie_ano_id, dia_total, noite_total, matricula_por_localizacao(ano_censo, estado_id, municipio_id, serie_ano_id, dia_total, noite_total,
localizacao_id, dependencia_adm_id) localizacao_id, dependencia_adm_id, escola_id)
SELECT SELECT
ano_censo, estado_id, municipio_id, LEFT(serie_ano_id, 1) as serie, sum(dia_total), sum(noite_total), ano_censo, estado_id, municipio_id, LEFT(serie_ano_id, 1) as serie, sum(dia_total), sum(noite_total),
localizacao_id, dependencia_adm_id localizacao_id, dependencia_adm_id, escola_id
FROM matricula_por_localizacao FROM matricula_por_localizacao
GROUP BY ano_censo, estado_id, municipio_id, serie, localizacao_id, dependencia_adm_id; GROUP BY ano_censo, estado_id, municipio_id, serie, localizacao_id, dependencia_adm_id, escola_id;
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment