楼主: winwin2013
3524 3

[问答] SAS中SQL的用法 [推广有奖]

  • 0关注
  • 0粉丝

硕士生

17%

还不是VIP/贵宾

-

威望
0
论坛币
1348 个
通用积分
0
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
1107 点
帖子
78
精华
0
在线时间
98 小时
注册时间
2013-7-7
最后登录
2018-12-29

楼主
winwin2013 发表于 2013-9-3 20:04:48 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
现在有以下两个文件夹
文件夹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




二维码

扫码加我 拉你入群

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

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

关键词:sql proc sql name 文件夹 Age 文件夹 程序 如何

沙发
yuerqieqie 发表于 2013-9-3 21:22:34
data a;
        input no $ name $;
        datalines;
11 cy
22 ly
33 yy
;
run;
data b;
        input no $ age;
        datalines;
1-1 20
2-2 30
3-3 40
4-4 50
5-5 60
;
run;
proc sql;
        create table result as
        select b.no, a.name, b.age
        from b join a
        on compress(tranwrd(b.no, '-','')) = compress(a.no);
quit;

藤椅
winwin2013 发表于 2013-9-3 22:17:31
yuerqieqie 发表于 2013-9-3 21:22
data a;
        input no $ name $;
        datalines;
谢谢,虽然我没有看懂compress和tranwrd这两个函数,但是你给了我启示,我用substr解决了词问题。有孔的话解释一下一上那两个函数吧

板凳
yuerqieqie 发表于 2013-9-3 22:48:50
winwin2013 发表于 2013-9-3 22:17
谢谢,虽然我没有看懂compress和tranwrd这两个函数,但是你给了我启示,我用substr解决了词问题。有孔的话 ...
tranwrd就是把taget 字符串中的指定字符"-"换成指定字符""(这里是空字符串);compress就是去掉字符串中所有的空格

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2026-1-1 05:00