Sas: como usar o operador where no proc sql
Você pode usar o operador WHERE na instrução PROC SQL no SAS para retornar apenas linhas onde determinadas condições são atendidas.
Os exemplos a seguir mostram como usar o operador WHERE nos seguintes cenários:
- Selecione as linhas onde uma condição é atendida.
- Selecione linhas onde uma das diversas condições for atendida.
- Selecione linhas onde diversas condições são atendidas.
Os exemplos a seguir mostram como usar o operador WHERE em cada cenário com o seguinte conjunto de dados no SAS:
 /*create dataset*/
data my_data;
    input team $points;
    datalines ;
AT 12
At 14
At 15
At 18
B 31
B 32
C 35
C 36
C40
D 28
E20
E 21
;
run ;
/*view dataset*/
proc print data =my_data; 

Exemplo 1: selecione linhas onde uma condição é atendida
O código a seguir mostra como usar o operador WHERE na instrução SQL PROC para selecionar todas as linhas no conjunto de dados em que equipe é igual a A:
 /*select all rows where team is equal to A*/
proc sql ;
   select *
   from my_data
   where team = 'A';
quit ;

As únicas linhas retornadas são aquelas onde o time é igual a A.
Exemplo 2: Selecione linhas onde uma das diversas condições for atendida
O código a seguir mostra como usar o operador WHERE na instrução SQL PROC para selecionar todas as linhas no conjunto de dados onde a equipe é igual a A ou os pontos são maiores que 30:
 /*select all rows where team is equal to A or points is greater than 30*/
proc sql ;
   select *
   from my_data
   where team = 'A' or points > 30 ;
quit ;

As únicas linhas retornadas são aquelas onde o time é igual a A ou os pontos são maiores que 30:
Exemplo 3: selecione linhas onde múltiplas condições são atendidas
O código a seguir mostra como usar o operador WHERE na instrução SQL PROC para selecionar todas as linhas no conjunto de dados onde a equipe é igual a A e os pontos são maiores que 13:
 /*select all rows where team is equal to A and points is greater than 13*/
proc sql ;
   select *
   from my_data
   where team = 'A' and points > 13 ;
quit ;

As únicas linhas retornadas são aquelas onde o time é igual a A e os pontos são maiores que 13:
Recursos adicionais
Os tutoriais a seguir explicam como executar outras tarefas comuns no SAS:
 SAS: Como usar o operador IN no PROC SQL
 SAS: Como usar UNION no PROC SQL
 SAS: Como usar EXCEPT no PROC SQL
