全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
2012 3
2016-11-09
悬赏 20 个论坛币 未解决
复制代码
希望得到的结果为数据集aaa为
a 1 1
b 2 2
c 3 3
a 1 1
b 1 2
c 1 3
a 1 1
b 2 2
c 3 3


二维码

扫码加我 拉你入群

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

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

全部回复
2016-11-9 20:26:27
数据集bbb中,x=b时,y=2;x=c时,y=3;
为什么你想要的结果里面第5,6行,y的值都是1?
二维码

扫码加我 拉你入群

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

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

2016-11-23 10:55:45
proc sql noprint;
        create table ccc as
        select a.x,a.z,b.y from aaa as a left join bbb as b
        on a.x = b.x;
quit;
这样就达到了替换y值的效果,但是如果想要做出最终结果还需要做一下排序处理噢
二维码

扫码加我 拉你入群

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

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

2016-11-23 13:42:35
一般需要考虑如果更新数据中不包括所有key值:
proc sql noprint;
        create table ccc as
        select a.x,a.z, coalesce(b.y,a.y) as y from aaa as a left join bbb as b
        on a.x = b.x;
quit;
或者:
proc sql;
update aaa
set y = (select y from bbb where aaa.x = bbb.x)
where x in (select x from bbb)
;quit;
二维码

扫码加我 拉你入群

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

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

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

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