diff --git a/docente_por_formacao.sql b/docente_por_formacao.sql index c07e4ed353d94ac6f72ac9a71208afd47b8bccea..e6a966d79299be7bccf6b297625dbb05345321e4 100644 --- a/docente_por_formacao.sql +++ b/docente_por_formacao.sql @@ -26,8 +26,8 @@ CREATE TABLE docente_por_formacao AS ( WITH docente_total AS (SELECT docente.id_docente AS "id_docente", docente.ano_censo AS ano_censo, estado.id AS estado_id, - municipio.id AS municipio_id, docente.dependencia_adm_id AS dependencia_adm_id, 0 as tipo_formacao, - docente.escola_id AS "escola_id" + municipio.id AS municipio_id, docente.dependencia_adm_id as dependencia_adm_id, 0 as tipo_formacao, + docente.escola_id as "escola_id", docente.escola_regiao_id AS "regiao_id" FROM docente INNER JOIN turma ON (docente.turma_id=turma.id AND docente.ano_censo=turma.ano_censo) INNER JOIN estado ON (docente.escola_estado_id=estado.id) @@ -37,13 +37,13 @@ WITH (docente.tipo_turma_atendimento_id <= 2 AND docente.tipo_turma_id IS NULL)) AND (docente.ano_censo >= 2018) AND (docente.nivel_tipo_formacao IN (1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)) GROUP BY docente.ano_censo, estado.nome, estado.id, municipio.nome, municipio.id, docente.dependencia_adm_id, - docente.id_docente, docente.escola_id + docente.id_docente, docente.escola_id, docente.escola_regiao_id ORDER BY docente.ano_censo ASC, estado.nome ASC, estado.id ASC, municipio.nome ASC, municipio.id ASC, docente.escola_id ASC ), docente_medio AS (SELECT docente.id_docente AS "id_docente", docente.ano_censo AS ano_censo, estado.id AS estado_id, - municipio.id AS municipio_id, docente.dependencia_adm_id AS dependencia_adm_id, 2 AS tipo_formacao, - docente.escola_id AS "escola_id" + municipio.id AS municipio_id, docente.dependencia_adm_id as dependencia_adm_id, 2 as tipo_formacao, + docente.escola_id as "escola_id", docente.escola_regiao_id AS "regiao_id" FROM docente INNER JOIN turma ON (docente.turma_id=turma.id AND docente.ano_censo=turma.ano_censo) INNER JOIN estado ON (docente.escola_estado_id=estado.id) @@ -53,13 +53,13 @@ WITH (docente.tipo_turma_atendimento_id <= 2 AND docente.tipo_turma_id IS NULL)) AND (docente.ano_censo >= 2018) AND (docente.nivel_tipo_formacao IN (1, 2, 3, 4)) GROUP BY docente.ano_censo, estado.nome, estado.id, municipio.nome, municipio.id, docente.dependencia_adm_id, - docente.id_docente, docente.escola_id + docente.id_docente, docente.escola_id, docente.escola_regiao_id ORDER BY docente.ano_censo ASC, estado.nome ASC, estado.id ASC, municipio.nome ASC, municipio.id ASC, docente.escola_id ASC ), docente_superior AS (SELECT docente.id_docente AS "id_docente", docente.ano_censo AS ano_censo, estado.id AS estado_id, - municipio.id AS municipio_id, docente.dependencia_adm_id AS dependencia_adm_id, 4 AS tipo_formacao, - docente.escola_id AS "escola_id" + municipio.id AS municipio_id, docente.dependencia_adm_id as dependencia_adm_id, 4 as tipo_formacao, + docente.escola_id as "escola_id", docente.escola_regiao_id AS "regiao_id" FROM docente INNER JOIN turma ON (docente.turma_id=turma.id AND docente.ano_censo=turma.ano_censo) INNER JOIN estado ON (docente.escola_estado_id=estado.id) @@ -69,13 +69,13 @@ WITH (docente.tipo_turma_atendimento_id <= 2 AND docente.tipo_turma_id IS NULL)) AND (docente.ano_censo >= 2017) AND (docente.nivel_tipo_formacao IN (5, 6)) GROUP BY docente.ano_censo, estado.nome, estado.id, municipio.nome, municipio.id, docente.dependencia_adm_id, - docente.id_docente, docente.escola_id + docente.id_docente, docente.escola_id, docente.escola_regiao_id ORDER BY docente.ano_censo ASC, estado.nome ASC, estado.id ASC, municipio.nome ASC, municipio.id ASC, docente.escola_id ASC ), docente_especializacao AS (SELECT docente.id_docente AS "id_docente", docente.ano_censo AS ano_censo, estado.id AS estado_id, - municipio.id AS municipio_id, docente.dependencia_adm_id AS dependencia_adm_id, 6 AS tipo_formacao, - docente.escola_id AS "escola_id" + municipio.id AS municipio_id, docente.dependencia_adm_id as dependencia_adm_id, 6 as tipo_formacao, + docente.escola_id as "escola_id", docente.escola_regiao_id AS "regiao_id" FROM docente INNER JOIN turma ON (docente.turma_id=turma.id AND docente.ano_censo=turma.ano_censo) INNER JOIN estado ON (docente.escola_estado_id=estado.id) @@ -85,13 +85,13 @@ WITH (docente.tipo_turma_atendimento_id <= 2 AND docente.tipo_turma_id IS NULL)) AND (docente.ano_censo >= 2017) AND (docente.nivel_tipo_formacao IN (7, 8)) GROUP BY docente.ano_censo, estado.nome, estado.id, municipio.nome, municipio.id, docente.dependencia_adm_id, - docente.id_docente, docente.escola_id + docente.id_docente, docente.escola_id, docente.escola_regiao_id ORDER BY docente.ano_censo ASC, estado.nome ASC, estado.id ASC, municipio.nome ASC, municipio.id ASC, docente.escola_id ASC ), docente_mestrado AS (SELECT docente.id_docente AS "id_docente", docente.ano_censo AS ano_censo, estado.id AS estado_id, - municipio.id AS municipio_id, docente.dependencia_adm_id AS dependencia_adm_id, 7 AS tipo_formacao, - docente.escola_id AS "escola_id" + municipio.id AS municipio_id, docente.dependencia_adm_id as dependencia_adm_id, 7 as tipo_formacao, + docente.escola_id as "escola_id", docente.escola_regiao_id AS "regiao_id" FROM docente INNER JOIN turma ON (docente.turma_id=turma.id AND docente.ano_censo=turma.ano_censo) INNER JOIN estado ON (docente.escola_estado_id=estado.id) @@ -101,13 +101,13 @@ WITH (docente.tipo_turma_atendimento_id <= 2 AND docente.tipo_turma_id IS NULL)) AND (docente.ano_censo >= 2017) AND (docente.nivel_tipo_formacao IN (9, 10)) GROUP BY docente.ano_censo, estado.nome, estado.id, municipio.nome, municipio.id, docente.dependencia_adm_id, - docente.id_docente, docente.escola_id + docente.id_docente, docente.escola_id, docente.escola_regiao_id ORDER BY docente.ano_censo ASC, estado.nome ASC, estado.id ASC, municipio.nome ASC, municipio.id ASC, docente.escola_id ASC ), docente_doutorado AS (SELECT docente.id_docente AS "id_docente", docente.ano_censo AS ano_censo, estado.id AS estado_id, - municipio.id AS municipio_id, docente.dependencia_adm_id AS dependencia_adm_id, 8 AS tipo_formacao, - docente.escola_id AS "escola_id" + municipio.id AS municipio_id, docente.dependencia_adm_id as dependencia_adm_id, 8 as tipo_formacao, + docente.escola_id as "escola_id", docente.escola_regiao_id AS "regiao_id" FROM docente INNER JOIN turma ON (docente.turma_id=turma.id AND docente.ano_censo=turma.ano_censo) INNER JOIN estado ON (docente.escola_estado_id=estado.id) @@ -117,7 +117,7 @@ WITH (docente.tipo_turma_atendimento_id <= 2 AND docente.tipo_turma_id IS NULL)) AND (docente.ano_censo >= 2017) AND (docente.nivel_tipo_formacao IN (11, 12)) GROUP BY docente.ano_censo, estado.nome, estado.id, municipio.nome, municipio.id, docente.dependencia_adm_id, - docente.id_docente, docente.escola_id + docente.id_docente, docente.escola_id, docente.escola_regiao_id ORDER BY docente.ano_censo ASC, estado.nome ASC, estado.id ASC, municipio.nome ASC, municipio.id ASC, docente.escola_id ASC ) diff --git a/matricula_por_localizacao.sql b/matricula_por_localizacao.sql index 23d47820b05108449f3002f0f8a9cf906c46f057..118bcd520837df7641a5b9a577531bd0db9eb8f9 100644 --- a/matricula_por_localizacao.sql +++ b/matricula_por_localizacao.sql @@ -47,7 +47,7 @@ WITH SELECT matricula.ano_censo, matricula.estado_id, matricula.municipio_id, 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, - matricula.escola_id + matricula.escola_id, matricula.regiao_id FROM matricula 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 @@ -60,15 +60,15 @@ FROM matricula 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, - noite_total, matricula.localizacao_id, matricula.dependencia_adm_id, matricula.escola_id + noite_total, matricula.localizacao_id, matricula.dependencia_adm_id, matricula.escola_id, matricula.regiao_id ); -- Create serie mod INSERT INTO matricula_por_localizacao(ano_censo, estado_id, municipio_id, serie_ano_id, dia_total, noite_total, - localizacao_id, dependencia_adm_id, escola_id) + localizacao_id, dependencia_adm_id, escola_id, regiao_id) SELECT ano_censo, estado_id, municipio_id, LEFT(serie_ano_id, 1) as serie, sum(dia_total), sum(noite_total), - localizacao_id, dependencia_adm_id, escola_id + localizacao_id, dependencia_adm_id, escola_id, regiao_id FROM matricula_por_localizacao -GROUP BY ano_censo, estado_id, municipio_id, serie, localizacao_id, dependencia_adm_id, escola_id; +GROUP BY ano_censo, estado_id, municipio_id, serie, localizacao_id, dependencia_adm_id, escola_id, regiao_id;