Sas: como usar order by no proc sql
Você pode usar a instrução ORDER BY no PROC SQL no SAS para classificar os resultados de uma consulta com base nos valores de uma ou mais variáveis.
Aqui estão três maneiras comuns de usar a instrução ORDER BY na prática:
Método 1: ordenar por uma variável crescente
/*display results in ascending order by value in team column*/
proc sql ;
select *
from my_data
order by team ;
quit ;
Método 2: ordenar por uma variável decrescente
/*display results in descending order by value in team column*/
proc sql ;
select *
from my_data
order by team desc ;
quit ;
Método 3: ordenar por múltiplas variáveis
/*display results in ascending order by team, then descending order by points*/
proc sql ;
select *
from my_data
order by team, points desc ;
quit ;
Os exemplos a seguir mostram como usar cada método na prática com o seguinte conjunto de dados no SAS que contém informações sobre vários jogadores de basquete:
/*create dataset*/
data my_data;
input team $position $points assists;
datalines ;
A Guard 14 4
B Guard 22 6
B Guard 24 9
A Forward 13 8
C Forward 13 9
A Guard 10 5
B Guard 24 4
C Guard 22 6
D Forward 34 2
D Forward 15 5
B Forward 23 5
B Guard 10 4
;
run ;
/*view dataset*/
proc print data =my_data;
Exemplo 1: Ordenar por uma variável crescente
O código a seguir mostra como retornar cada linha do conjunto de dados em ordem crescente com base nos valores da coluna da equipe :
/*display results in ascending order by value in team column*/
proc sql ;
select *
from my_data
order by team;
quit ;
Observe que os resultados são exibidos em ordem crescente pelos valores da coluna Equipe .
Exemplo 2: Ordenar por uma variável decrescente
O código a seguir mostra como retornar cada linha do conjunto de dados em ordem decrescente com base nos valores da coluna da equipe :
/*display results in descending order by value in team column*/
proc sql ;
select *
from my_data
order by team desc ;
quit ;
Observe que os resultados são exibidos em ordem decrescente com base nos valores da coluna Equipe .
Exemplo 3: Ordenar por diversas variáveis
O código a seguir mostra como retornar cada linha do conjunto de dados primeiro em ordem crescente por equipe e depois em ordem decrescente por pontos :
/*display results in ascending order by team, then descending order by points*/
proc sql ;
select *
from my_data
order by team, points desc ;
quit ;
Observe que os resultados são exibidos primeiro em ordem crescente por equipe e depois em ordem decrescente por pontos .
Recursos adicionais
Os tutoriais a seguir explicam como executar outras tarefas comuns no SAS:
SAS: Como usar UNION no PROC SQL
SAS: Como usar EXCEPT no PROC SQL
SAS: Como usar o operador IN no PROC SQL
SAS: Como usar o operador WHERE no PROC SQL