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