Sas: วิธีใช้ยกเว้นใน proc sql


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

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

ตัวอย่าง: การใช้ EXCEPT ใน PROC SQL ใน SAS

สมมติว่าเรามีชุดข้อมูลต่อไปนี้ใน SAS ที่มีข้อมูลเกี่ยวกับผู้เล่นบาสเกตบอลต่างๆ:

 /*create first dataset*/
data data1;
    input team $points;
    datalines ;
AT 12
At 14
At 15
At 18
At 20
At 22
;
run ;

/*view first dataset*/
proc print data =data1;

และสมมติว่าเรามีชุดข้อมูลอื่นใน SAS ที่มีข้อมูลเกี่ยวกับผู้เล่นบาสเก็ตบอลหลายคนด้วย:

 /*create second dataset*/
data data2;
    input team $points;
    datalines ;
AT 12
At 14
B23
B25
B29
B 30
;
run ;

/*view second dataset*/
proc print data =data2; 

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

 /*only return rows from first dataset that are not in second dataset*/
proc sql ;
   title 'data1 EXCEPT data2';
   select * from data1
   except
   select * from data2;
quit ; 

โปรดทราบว่าระบบจะส่งคืนเฉพาะแถวจากชุดข้อมูลชุดแรกที่ไม่อยู่ในชุดข้อมูลชุดที่สอง

นอกจากนี้เรายังสามารถใช้ตัวดำเนินการ EXCEPT เพื่อส่งคืนเฉพาะแถวจากชุดข้อมูลที่สองที่ไม่ได้อยู่ในชุดข้อมูลแรก:

 /*only return rows from second dataset that are not in first dataset*/
proc sql ;
   title 'data2 EXCEPT data1';
   select * from data2
   except
   select * from data1;
quit ; 

โปรดทราบว่าระบบจะส่งคืนเฉพาะแถวจากชุดข้อมูลชุดที่สองที่ไม่ได้อยู่ในชุดข้อมูลชุดแรก

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

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

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

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

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