Sas: como usar except no proc sql
Você pode usar o operador EXCEPT na instrução SQL PROC no SAS para retornar apenas linhas em um conjunto de dados que não estão em outro conjunto de dados.
O exemplo a seguir mostra como usar o operador EXCEPT na prática.
Exemplo: Usando EXCEPT em PROC SQL em SAS
Suponha que temos o seguinte conjunto de dados no SAS que contém informações sobre vários jogadores de basquete:
/*create first dataset*/
data data1;
input team $points;
datalines ;
AT 12
At 14
At 15
At 18
At 20
At 22
;
run ;
/*view first dataset*/
proc print data =data1;
E suponha que temos outro conjunto de dados no SAS que também contém informações sobre vários jogadores de basquete:
/*create second dataset*/
data data2;
input team $points;
datalines ;
AT 12
At 14
B23
B25
B29
B 30
;
run ;
/*view second dataset*/
proc print data =data2;
Podemos usar o operador EXCEPT na instrução SQL PROC para retornar apenas as linhas do primeiro conjunto de dados que não estão no segundo conjunto de dados.
/*only return rows from first dataset that are not in second dataset*/
proc sql ;
title 'data1 EXCEPT data2';
select * from data1
except
select * from data2;
quit ;
Observe que somente as linhas do primeiro conjunto de dados que não pertencem ao segundo conjunto de dados serão retornadas.
Também podemos usar o operador EXCEPT para retornar apenas linhas do segundo conjunto de dados que não estão no primeiro conjunto de dados:
/*only return rows from second dataset that are not in first dataset*/
proc sql ;
title 'data2 EXCEPT data1';
select * from data2
except
select * from data1;
quit ;
Observe que somente as linhas do segundo conjunto de dados que não pertencem ao primeiro conjunto de dados serão retornadas.
Recursos adicionais
Os tutoriais a seguir explicam como executar outras tarefas comuns no SAS:
SAS: Como usar UNION no PROC SQL
SAS: Como usar Proc Univariate por grupo
SAS: como usar o conteúdo Proc