Soma com condição no SAS: Agrupamentos com Proc Sql

group by

PROC SQL;
    CREATE TABLE VENDAS_P_MARCA AS
    SELECT MARCA, SUM(VENDAS) AS VENDAS
    FROM TABELA_VENDAS
    GROUP BY 1;
RUN;

PROC SQL;
    CREATE TABLE VENDAS_P_ESTADO AS
    SELECT ESTADO, SUM(VENDAS) AS VENDAS
    FROM TABELA_VENDAS
    GROUP BY 1;
RUN;

PROC SQL;
    CREATE TABLE VENDAS_P_ESTADO_MARCA AS
    SELECT MARCA, ESTADO, SUM(VENDAS) AS VENDAS
    FROM TABELA_VENDAS
    GROUP BY 1,2;
RUN;

group bycase when. case when if… then… 

**** SOMA COM CONDICAO E AGRUPA *****;
    PROC SQL;
    CREATE TABLE VENDAS_MARCA_FINAL AS
    SELECT MARCA, DATA
       SUM (CASE WHEN ESTADO = "SP" THEN VENDAS ELSE 0 END) AS VENDAS_SP,
       SUM (CASE WHEN ESTADO = "RS" THEN VENDAS ELSE 0 END) AS VENDAS_RS,
       SUM (CASE WHEN ESTADO = "AM" THEN VENDAS ELSE 0 END) AS VENDAS_AM,
       SUM (CASE WHEN ESTADO = "GO" THEN VENDAS ELSE 0 END) AS VENDAS_GO,
       SUM (CASE WHEN ESTADO = "RJ" THEN VENDAS ELSE 0 END) AS VENDAS_RJ
     FROM TABELA_VENDAS
     GROUP BY 1,2;
QUIT;

3 comentários em “Soma com condição no SAS: Agrupamentos com Proc Sql”

Deixe um comentário

O seu endereço de email não será publicado. Campos obrigatórios marcados com *