From 09375948c641dfccd1850ae2e6bf467e1d3ac606 Mon Sep 17 00:00:00 2001 From: ppc19 <ppc19@inf.ufpr.br> Date: Fri, 13 May 2022 15:56:21 -0300 Subject: [PATCH] add escola_id --- docente_por_formacao.sql | 44 +++++++++++++++++++++++----------------- 1 file changed, 25 insertions(+), 19 deletions(-) diff --git a/docente_por_formacao.sql b/docente_por_formacao.sql index a02acc8..3735e2c 100644 --- a/docente_por_formacao.sql +++ b/docente_por_formacao.sql @@ -21,12 +21,13 @@ along with HOTMapper. If not, see <https://www.gnu.org/licenses/>. -- depends: docente, turma -- SimCAQ: tabela de docentes por formação -- -CREATE TABLE docente_por_formacao AS ( +CREATE TABLE docente_por_formacao2 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 + municipio.id AS municipio_id, docente.dependencia_adm_id as dependencia_adm_id, 0 as tipo_formacao, + docente.escola_id as "escola_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) @@ -36,12 +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 - ORDER BY docente.ano_censo ASC, estado.nome ASC, estado.id ASC, municipio.nome ASC, municipio.id ASC + docente.id_docente, docente.escola_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 + municipio.id AS municipio_id, docente.dependencia_adm_id as dependencia_adm_id, 2 as tipo_formacao, + docente.escola_id as "escola_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) @@ -51,12 +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 - ORDER BY docente.ano_censo ASC, estado.nome ASC, estado.id ASC, municipio.nome ASC, municipio.id ASC + docente.id_docente, docente.escola_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 + municipio.id AS municipio_id, docente.dependencia_adm_id as dependencia_adm_id, 4 as tipo_formacao, + docente.escola_id as "escola_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) @@ -66,12 +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 - ORDER BY docente.ano_censo ASC, estado.nome ASC, estado.id ASC, municipio.nome ASC, municipio.id ASC + docente.id_docente, docente.escola_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 + municipio.id AS municipio_id, docente.dependencia_adm_id as dependencia_adm_id, 6 as tipo_formacao, + docente.escola_id as "escola_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) @@ -81,12 +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 - ORDER BY docente.ano_censo ASC, estado.nome ASC, estado.id ASC, municipio.nome ASC, municipio.id ASC + docente.id_docente, docente.escola_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 + municipio.id AS municipio_id, docente.dependencia_adm_id as dependencia_adm_id, 7 as tipo_formacao, + docente.escola_id as "escola_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) @@ -96,12 +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 - ORDER BY docente.ano_censo ASC, estado.nome ASC, estado.id ASC, municipio.nome ASC, municipio.id ASC + docente.id_docente, docente.escola_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 + municipio.id AS municipio_id, docente.dependencia_adm_id as dependencia_adm_id, 8 as tipo_formacao, + docente.escola_id as "escola_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) @@ -111,8 +117,8 @@ 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 - ORDER BY docente.ano_censo ASC, estado.nome ASC, estado.id ASC, municipio.nome ASC, municipio.id ASC + docente.id_docente, docente.escola_id + ORDER BY docente.ano_censo ASC, estado.nome ASC, estado.id ASC, municipio.nome ASC, municipio.id ASC, docente.escola_id ASC ) SELECT * FROM docente_total -- GitLab