Comment effectuer une jointure externe dans SAS (avec exemple)
Vous pouvez utiliser la syntaxe de base suivante pour effectuer une jointure externe avec deux ensembles de données dans SAS :
proc sql;
create table final_table as
select coalesce(x.team, y.team) as team, x.team, x.points, y.team, y.assists
from data1 as x full join data2 as y
on x.team = y.team;
quit;
Cet exemple particulier effectue une jointure externe à l’aide de l’instruction de jointure complète et renvoie toutes les lignes des ensembles de données appelés data1 et data2 .
L’exemple suivant montre comment utiliser cette syntaxe dans la pratique.
Exemple : effectuer une jointure externe dans SAS
Supposons que nous disposions des deux ensembles de données suivants dans SAS qui contiennent des informations sur diverses équipes de basket-ball :
/*create datasets*/
data data1;
input team $ points;
datalines;
A 18
B 22
C 19
D 14
E 14
F 11
G 20
H 28
;
run;
data data2;
input team $ assists;
datalines;
A 4
B 9
C 14
D 13
L 10
M 8
;
run;
/*view datasets*/
proc print data=data1;
proc print data=data2;
Nous pouvons utiliser la syntaxe suivante pour effectuer une jointure externe et créer un nouvel ensemble de données contenant chaque ligne des deux ensembles de données :
/*perform outer join*/
proc sql;
create table final_table as
select coalesce(x.team, y.team) as team, x.team, x.points, y.team, y.assists
from data1 as x full join data2 as y
on x.team = y.team;
quit;
/*view results of outer join*/
proc print data=final_table;
L’ensemble de données résultant contient chaque ligne de chaque ensemble de données individuel.
Notez que nous avons dû utiliser la fonction COALESCE pour garantir que les noms d’équipe des deux ensembles de données étaient renvoyés dans l’ensemble de données résultant.
Si nous n’utilisions pas cette fonction, seules les valeurs de la colonne d’équipe du premier ensemble de données seraient affichées dans l’ensemble de données résultant.
Ressources additionnelles
Les didacticiels suivants expliquent comment effectuer d’autres tâches courantes dans SAS :
Comment effectuer une jointure interne dans SAS
Comment effectuer une jointure à gauche dans SAS
Comment supprimer les doublons dans SAS