From 43275837bacc7c2a81117a41931d4a4b5f47c15f Mon Sep 17 00:00:00 2001
From: Henrique Varella Ehrenfried <hvehrenfried@inf.ufpr.br>
Date: Wed, 12 Aug 2020 09:10:30 -0300
Subject: [PATCH] Fix SQL for Eixo2, Eixo3, Eixo4 and PNAD

Signed-off-by: Henrique Varella Ehrenfried <hvehrenfried@inf.ufpr.br>
---
 eixo2.sql |  1 +
 eixo3.sql |  1 +
 eixo4.sql |  1 +
 pnad.sql  | 82 +++++++++++++++++++++++++++++++++++++++++++++----------
 4 files changed, 71 insertions(+), 14 deletions(-)

diff --git a/eixo2.sql b/eixo2.sql
index 24b3967..a3c17de 100644
--- a/eixo2.sql
+++ b/eixo2.sql
@@ -65,6 +65,7 @@ GROUP BY
     familias_cadunico_2.cod_abastecimento_agua_domicilio,
     familias_cadunico_2.ind_familia_quilombola,  
     familias_cadunico_2.cod_escoa_sanitario_domicilio, 
+    familias_cadunico_2.id_familia,
     geographic.nome_regiao,
     geographic.sigla_estado
 
diff --git a/eixo3.sql b/eixo3.sql
index dd9db9a..9b8a414 100644
--- a/eixo3.sql
+++ b/eixo3.sql
@@ -62,6 +62,7 @@ GROUP BY
     familias_cadunico_2.ind_tipo_familia, 
     familias_cadunico_2.marca_programa_bolsa_familia,
     familias_cadunico_2.ind_familia_quilombola,  
+    familias_cadunico_2.id_familia,
     pessoas_cadunico_2.atividade_extrativista,
     pessoas_cadunico_2.codigo_ibge, 
     geographic.nome_regiao,
diff --git a/eixo4.sql b/eixo4.sql
index f297f39..10570cb 100644
--- a/eixo4.sql
+++ b/eixo4.sql
@@ -61,6 +61,7 @@ WHERE
 GROUP BY 
     familias_cadunico_2.ano_censo,
     familias_cadunico_2.ind_familia_quilombola,  
+    familias_cadunico_2.id_familia,
     pessoas_cadunico_2.atividade_extrativista,
     pessoas_cadunico_2.idade,
     pessoas_cadunico_2.codigo_ibge, 
diff --git a/pnad.sql b/pnad.sql
index 02d4576..0979816 100644
--- a/pnad.sql
+++ b/pnad.sql
@@ -21,10 +21,65 @@
 CREATE TABLE pnad_ag 
 AS 
 SELECT
-    pnad.cor_raca_original,
-    pnad.rede_ensino,
-    pnad.area_rede_publica_ensino,
-    pnad.curso_que_frequenta,
+    'pnad_continua' "tipo",
+    CAST((pnad_cont.cor_raca) AS VARCHAR(255)) AS cor_raca,
+    CAST((pnad_cont.in_escola_rede) AS VARCHAR(255)) AS in_escola_rede,
+    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.regiao_id,
     ano_censo,
@@ -40,20 +95,19 @@ WHERE
     (idade <= 24) 
 
 GROUP BY 
-    pnad.cor_raca_original, 
+    pnad.cor_raca_original , 
     pnad.rede_ensino, 
-    pnad.area_rede_publica_ensino, 
     pnad.curso_que_frequenta, 
     estado.sigla, 
     estado.regiao_id, 
     ano_censo 
 
 ORDER BY 
-    pnad.cor_raca_original ASC, 
-    pnad.rede_ensino ASC, 
-    pnad.area_rede_publica_ensino ASC, 
-    pnad.curso_que_frequenta ASC, 
-    estado.sigla ASC, 
-    estado.regiao_id ASC, 
-    ano_censo ASC
-;
\ No newline at end of file
+    "tipo" ASC,
+    ano_censo ASC,
+    cor_raca ASC, 
+    in_escola_rede ASC, 
+    nivel_escola ASC, 
+    sigla ASC, 
+    regiao_id ASC
+;
-- 
GitLab