Sas: วิธีใช้ตัวดำเนินการ in ใน proc sql


คุณสามารถใช้ตัวดำเนินการ IN ในคำสั่ง PROC SQL ใน SAS เพื่อส่งคืนเฉพาะแถวที่ตัวแปรในชุดข้อมูลมีค่าในรายการ

ตัวอย่างต่อไปนี้แสดงวิธีการใช้ตัวดำเนินการ IN ในทางปฏิบัติ

ตัวอย่าง: การใช้ตัวดำเนินการ IN ใน PROC SQL ใน SAS

สมมติว่าเรามีชุดข้อมูลต่อไปนี้ใน 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;

เราสามารถใช้ตัวดำเนินการ IN ใน PROC SQL เพื่อเลือกเฉพาะแถวที่ทีมเท่ากับ A, B หรือ E:

 /*select all rows where team is A, B, or E*/
proc sql ;
   select *
   from my_data
   where team in ('A', 'B', 'E');
quit ; 

โปรดทราบว่าระบบจะส่งคืนเฉพาะแถวที่ทีมเท่ากับ A, B หรือ E

สิ่งที่ตรงกันข้ามกับตัวดำเนินการ IN ใน PROC SQL คือ NOT IN ซึ่งเลือกแถวที่ตัวแปรบางตัวในชุดข้อมูล ไม่มี ค่าในรายการ

รหัสต่อไปนี้แสดงวิธีใช้ตัวดำเนินการ NOT IN เพื่อเลือกแถวทั้งหมดที่ทีมไม่เท่ากับ A, B หรือ E:

 /*select all rows where team is not A, B, or E*/
proc sql ;
   select *
   from my_data
   where team not in ('A', 'B', 'E');
quit ; 

โปรดทราบว่าระบบจะส่งคืนเฉพาะแถวที่ทีมไม่เท่ากับ A, B หรือ E

แหล่งข้อมูลเพิ่มเติม

บทช่วยสอนต่อไปนี้จะอธิบายวิธีดำเนินการงานทั่วไปอื่นๆ ใน SAS:

SAS: วิธีใช้ UNION ใน PROC SQL
SAS: วิธีใช้ยกเว้นใน PROC SQL
SAS: วิธีใช้ Proc Univariate ตามกลุ่ม

เพิ่มความคิดเห็น

อีเมลของคุณจะไม่แสดงให้คนอื่นเห็น ช่องข้อมูลจำเป็นถูกทำเครื่องหมาย *