全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
2386 7
2010-03-31
表A Store
Store_id(PK)     City            Space
wh1          New York      370
wh2          Beijing           500
wh3          New York      200
wh4          London         400

表B Employee
Store_id(FK)       Emp_ID(PK)        Salary
wh1                       e1                         1220
wh1                       e3                         1210
wh2                       e4                         1250
wh2                       e6                         1230

1.需要取出每个CITY的SALARY最大值 以及相应的EMP_ID
2.取出总SALARY,总SPACE,store数量,employee数量SALARY最大数得出结果如下:
CITY           TOT.SALARY                  TOT.SPACE          #STORE            #EMPLOYEE           MAX SALARY
New York     2430(1220+1210)         570(370+200)                2                             2                            1220
Beijing         2480(1250+1230)          500                                 1                             2                            1250
London        0                                    400                                  1                            0                             0


第一个问题 我的做法是
先把2表合并
复制代码
然后取值
复制代码
因为我这里没有SAS软件,所以不能运行,麻烦有软件的朋友帮忙运行下,看看这个方法能不能成功 或者有谁有更好的方法,
第二个问题应该怎么下手?
二维码

扫码加我 拉你入群

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

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

全部回复
2010-3-31 12:15:48
是这样的,$符号代表的是字符型变量,他只是一个表达方式而已,并非你程序中by语句后面的变量名,正确方式为:data one;

input Store_id $ City $ Space;

cards;

wh1 New.York 370

wh2 Beijing 500

wh3 New.York 200

wh4 London 400

;

data two;

input Store_id $ Emp_ID Salary;

cards;

wh1 e1 1220

wh1 e3 1210

wh2 e4 1250

wh2 e6 1230

;

proc sort data=one;

by Store_id ;

proc sort data=two;

by Store_id ;

data total;

merge one two;

by Store_id;

proc print data=total;

run;

本文来自: 人大经济论坛 详细出处参考:http://www.pinggu.org/bbs/viewth ... amp;from^^uid=1137124
二维码

扫码加我 拉你入群

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

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

2010-3-31 12:16:32
你这样合并肯定是可以的!但是看你想要什么结果吧?
二维码

扫码加我 拉你入群

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

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

2010-3-31 12:19:52
我要的是从两个表中取出每个CITY中的最大SALARY 以前没有学过SAS 用SQL语句我能把它取出来,但是不知道SAS是怎么取出来的,我就去看pdf文档,然后想把2个表合并起来,然后再取其中的MAX.....不知道这个方法能不能行得通

意思就是取出来的值差不多是 New York 是1220(1220>1210) Beijing是1250(1250>1230)

看看这个代码
首先将2个表合并:
复制代码
然后执行找出最大值的命令:
复制代码
这样可以行得通不?因为我这里没有SAS软件。。。只能想象……
二维码

扫码加我 拉你入群

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

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

2010-3-31 13:50:09
看来不是想要的东西啊
二维码

扫码加我 拉你入群

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

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

2010-3-31 16:36:02
有人能帮忙下么?
二维码

扫码加我 拉你入群

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

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

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

说点什么

分享

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