唯一ID | 类型 | 类型ID |
---|---|---|
10001 | 公司 | 123422 |
10002 | 公司 | 123477 |
10002 | 子公司 | 12000 |
10005 | 公司 | 123455 |
10005 | 子公司 | 12125 |
10006 | 子公司 | 12300 |
因此,我有一个表,其中唯一 ID 可以具有与其关联的一行或两行数据。我想提取行并删除那些只有一行信息的唯一 ID。例如,我上面的数据集中的顶部一个和底部一个我不需要它。如何在 PROC SQL 步骤中执行此操作? 非常感谢!
我还没有尝试过任何东西。
我无法想象为什么你会使用 PROC SQL 来做这样的事情。只需使用数据步骤即可。
data want;
set have;
by id ;
if first.id and last.id then delete;
run;
如果您确实必须使用 SQL 来完成此操作,您可以使用 HAVING 子句。
proc sql;
create table want as
select *
from have
group by id
having count(*) > 1
;
quit;