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