Sas: hoe de where-operator in proc sql te gebruiken
U kunt de WHERE- operator in de PROC SQL- instructie in SAS gebruiken om alleen rijen te retourneren waarin aan bepaalde voorwaarden wordt voldaan.
De volgende voorbeelden laten zien hoe u de WHERE- operator gebruikt in de volgende scenario’s:
- Selecteer rijen waarin aan een voorwaarde wordt voldaan.
- Selecteer rijen waarin aan een van meerdere voorwaarden wordt voldaan.
- Selecteer rijen waarin aan meerdere voorwaarden wordt voldaan.
De volgende voorbeelden laten zien hoe u de WHERE- operator in elk scenario gebruikt met de volgende gegevensset in 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; 

Voorbeeld 1: selecteer rijen waarin aan een voorwaarde wordt voldaan
De volgende code laat zien hoe u de WHERE- operator in de SQL PROC- instructie gebruikt om alle rijen in de gegevensset te selecteren waarin team gelijk is aan A:
 /*select all rows where team is equal to A*/
proc sql ;
   select *
   from my_data
   where team = 'A';
quit ;

De enige rijen die worden geretourneerd, zijn die waarin het team gelijk is aan A.
Voorbeeld 2: Selecteer rijen waarin aan een van meerdere voorwaarden wordt voldaan
De volgende code laat zien hoe u de WHERE- operator in de SQL PROC- instructie gebruikt om alle rijen in de gegevensset te selecteren waarin het team gelijk is aan A of de punten groter zijn dan 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 ;

De enige geretourneerde rijen zijn die waarin het team gelijk is aan A of de punten groter zijn dan 30:
Voorbeeld 3: selecteer rijen waarin aan meerdere voorwaarden wordt voldaan
De volgende code laat zien hoe u de WHERE- operator in de SQL PROC- instructie kunt gebruiken om alle rijen in de gegevensset te selecteren waarin team gelijk is aan A en de punten groter zijn dan 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 ;

De enige geretourneerde lijnen zijn die waarbij het team gelijk is aan A en de punten groter zijn dan 13:
Aanvullende bronnen
In de volgende zelfstudies wordt uitgelegd hoe u andere veelvoorkomende taken in SAS kunt uitvoeren:
 SAS: Hoe de IN-operator in PROC SQL te gebruiken
 SAS: UNION gebruiken in PROC SQL
 SAS: Hoe te gebruiken BEHALVE in PROC SQL
