基于一列id的2个表的SAS数据操作

时间:2014-11-14 03:24:10

标签: sas

我有两张表如下:

表1

data table1;
   input id $ value;
   datalines;
   A 1
   A 2
   B 1
   B 2
   C 1
   D 1
   ;

表2

data table2;
   input id $ value;
   datalines;
   A 1
   B 2
   C 1
   D 1
   E 1
   ;

正如您可能观察到表1的唯一ID是A,B,C,D。 我想删除观察结果,表2中的id不会出现在table1中。

因此,最后一次观察table2应该删除为E而不是{A,B,C,D}

期望的输出:

   A 1
   B 2
   C 1
   D 1

1 个答案:

答案 0 :(得分:1)

您可以使用proc sql

执行此操作
proc sql;
    delete from table2
         where not exists (select 1 from table1 where table1.id = table2.id);