全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
12799 12
2012-05-03
proc sql;;
    create table abc as
    select distinct no as id,time
    from aaa
    where no in (select id from we);
  quit;

  上面效率太低了。我想把上面这段用用data 步来做,如下,但是如何好像没有可以直接从abc中去重的办法?
  where no in (select id from we) 这段是否只能用modify的 _iorc_ 能做到相似的效果?
新手,麻烦给点儿思路。

data abc ;
set Org_data(keep=extid time);
run;
data abc;
modify abc aaa;
by no ;
if (^ _iorc_)  then remove;
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2012-5-3 12:17:21
可以用data步骤做合并,然后排序id只取first.id
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2012-5-3 12:38:28
可以通过宏来写,把这句(select id from we)付给宏变量id1-id&i,之后把宏变量组织成一个宏变量,在用data的where no in (你的最后的宏变量)
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2012-5-3 12:55:32
liuyingbei 发表于 2012-5-3 12:17
可以用data步骤做合并,然后排序id只取first.id
牛叉啊。 这个办法好好好好好啊
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2012-5-3 12:58:26
chendonghui1987 发表于 2012-5-3 12:38
可以通过宏来写,把这句(select id from we)付给宏变量id1-id&i,之后把宏变量组织成一个宏变量,在用data的wh ...
不错不错。我试试。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2012-5-3 13:22:42
chendonghui1987 发表于 2012-5-3 12:38
可以通过宏来写,把这句(select id from we)付给宏变量id1-id&i,之后把宏变量组织成一个宏变量,在用data的wh ...
是 proc sql;
    select id into :extids2 from Org_data;
  quit;
这么写的不?(应该错了吧?如何放多个值呢?)
然后是 where no in '&extids2 '?
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

点击查看更多内容…
相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群