Sas: so verwenden sie den where-operator in proc sql


Sie können den WHERE- Operator in der PROC-SQL- Anweisung in SAS verwenden, um nur Zeilen zurückzugeben, in denen bestimmte Bedingungen erfüllt sind.

Die folgenden Beispiele zeigen, wie der WHERE- Operator in den folgenden Szenarios verwendet wird:

  • Wählen Sie Zeilen aus, in denen eine Bedingung erfüllt ist.
  • Wählen Sie Zeilen aus, in denen eine von mehreren Bedingungen erfüllt ist.
  • Wählen Sie Zeilen aus, in denen mehrere Bedingungen erfüllt sind.

Die folgenden Beispiele zeigen, wie der WHERE- Operator in jedem Szenario mit dem folgenden Datensatz in SAS verwendet wird:

 /*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; 

Beispiel 1: Zeilen auswählen, in denen eine Bedingung erfüllt ist

Der folgende Code zeigt, wie der WHERE- Operator in der SQL PROC- Anweisung verwendet wird, um alle Zeilen im Datensatz auszuwählen, bei denen Team gleich A ist:

 /*select all rows where team is equal to A*/
proc sql ;
   select *
   from my_data
   where team = 'A';
quit ;

Es werden nur die Zeilen zurückgegeben, in denen das Team gleich A ist.

Beispiel 2: Wählen Sie Zeilen aus, in denen eine von mehreren Bedingungen erfüllt ist

Der folgende Code zeigt, wie der WHERE- Operator in der SQL PROC- Anweisung verwendet wird, um alle Zeilen im Datensatz auszuwählen, in denen das Team gleich A ist oder die Punkte größer als 30 sind:

 /*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 ;

Es werden nur die Zeilen zurückgegeben, in denen das Team gleich A ist oder die Punkte größer als 30 sind:

Beispiel 3: Zeilen auswählen, in denen mehrere Bedingungen erfüllt sind

Der folgende Code zeigt, wie der WHERE- Operator in der SQL PROC- Anweisung verwendet wird, um alle Zeilen im Datensatz auszuwählen, in denen Team gleich A ist und Punkte größer als 13 sind:

 /*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 ;

Die einzigen zurückgegebenen Zeilen sind diejenigen, bei denen das Team gleich A ist und die Punkte größer als 13 sind:

Zusätzliche Ressourcen

In den folgenden Tutorials wird erläutert, wie Sie andere häufige Aufgaben in SAS ausführen:

SAS: So verwenden Sie den IN-Operator in PROC SQL
SAS: So verwenden Sie UNION in PROC SQL
SAS: So verwenden Sie EXCEPT in PROC SQL

Einen Kommentar hinzufügen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert