现在有以下两个文件夹
文件夹1,名为a.aa
no name
11 cy
22 ly
33 yy
文件夹2,名为b.bb
no age
1-1 20
2-2 30
3-3 40
4-4 50
5-5 60
我想先让a.aa中的no先变成1-1格式,让后再从b.bb中找出相同的no后,把b.bb中的age合并到a.aa中去;
合并后的文件夹如下,这个程序请问用proc sql如何写?
no name age
1-1 cy 20
2-2 ly 30
3-3 yy 40
关于SAS中proc sql过程步的问题
答案:2 悬赏:30 手机版
解决时间 2021-03-23 07:17
- 提问者网友:佞臣
- 2021-03-22 12:22
最佳答案
- 五星知识达人网友:佘樂
- 2021-03-22 13:07
SQL的话参考下
select b.bb.no,a.aa.name,b.bb.age
from a.aa left join b.bb
1)
on a.aa=replace(b.bb.no,'-') --这个是去掉b.bb里的-的
或者也可以用
2)
on substr(a.aa.no,1,1)||'-'||substr(a.aa.no,2,1)=b.bb.no --这个是按你的要求,加-的
select b.bb.no,a.aa.name,b.bb.age
from a.aa left join b.bb
1)
on a.aa=replace(b.bb.no,'-') --这个是去掉b.bb里的-的
或者也可以用
2)
on substr(a.aa.no,1,1)||'-'||substr(a.aa.no,2,1)=b.bb.no --这个是按你的要求,加-的
全部回答
- 1楼网友:时间的尘埃
- 2021-03-22 13:58
here are several ways to group your data.
data t1;
call streaminit(123);
do i=1 to 100;
x=rand('chisquare',2);
output;
end;
run;
proc sql;
select x, int((i-1)/10) as group
from t1
order by 2
;
quit;
proc sql;
select x, int((monotonic()-1)/10) as group
from t1
order by 2
;
quit;
proc sql;
select x, ceil(10*ranuni(123)) as group
from t1
order by 2
;
quit;
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯