楼主: 道心种魔
8884 4

[原创博文] 怎么样在SAS里筛选出数据? [推广有奖]

  • 0关注
  • 1粉丝

大专生

75%

还不是VIP/贵宾

-

威望
0
论坛币
2343 个
通用积分
1.0000
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
5008 点
帖子
23
精华
0
在线时间
74 小时
注册时间
2007-1-2
最后登录
2022-5-8

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
现在有一个数据:
货物入库时间 货物出库时间 货物编号 货物押金

2007/8/13

2010/1/13

1901

4037.1

2007/8/25

2008/7/13

1902

6099.65

2007/8/26

2008/1/21

1903

1105.71

2007/9/13

2009/5/15

1904

2896.33



当货物在仓库期间,货物押金是不能动用的。请问怎么才能在SAS里求出每个月月底时不能动用的钱。
比如,2007/8 月底时,不能动用的钱为4037.1+6099.65+1105.71=11242.46。
请问用什么数据步比较合适呢?PROC SQL怎么样?
大家有好的思路请告诉我。
二维码

扫码加我 拉你入群

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

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

关键词:筛选出 怎么样 proc sql ROC sql 仓库

沙发
shenliang_111 发表于 2011-12-12 11:02:22 |只看作者 |坛友微信交流群
不知道有没有理解楼主的意思...
  1. /*初始表*/
  2. data a;
  3. informat ruku  yymmdd10.
  4.          chuku yymmdd10.
  5.                  code  4.
  6.          yajin 7.
  7. ;
  8. input ruku chuku code yajin;
  9. cards;
  10. 2007/8/13   2010/1/13   1901   4037.1
  11. 2007/8/25   2008/7/13   1902   6099.65
  12. 2007/8/26   2008/1/21   1903   1105.71
  13. 2007/9/13   2009/5/15   1904   2896.33
  14. ;
  15. proc print;
  16. run;
  17. /*查询表c..假定考察2007-2010年8月底四个时期 */
  18. data b;
  19. input x $;
  20. cards;
  21. 20070801
  22. 20080801
  23. 20090801
  24. 20100801
  25. ;
  26. data c;
  27. set b;
  28. time=intnx('month',input(x,yymmdd8.),0,'end');
  29. format time yymmdd10.;
  30. run;
  31. /*sql*/
  32. proc sql;
  33. create table result as
  34. select c.time,sum(yajin) as budongyanjin from
  35. c inner join a on
  36. a.ruku<=c.time<=a.chuku
  37. group by c.time;
  38. quit;
复制代码

使用道具

藤椅
baoaibaobao 发表于 2011-12-12 11:35:18 |只看作者 |坛友微信交流群
使用楼上的数据集a;
  1. proc sql;
  2. create table want as
  3.         select distinct catx('/',scan(put(ruku,yymmdd10.),1,'-')
  4.                              ,scan(put(ruku,yymmdd10.),2,'-')) as date
  5.                  ,sum(yajin) as sum from a
  6.         group by cat(scan(put(ruku,yymmdd10.),1,'-')
  7.                         ,scan(put(ruku,yymmdd10.),2,'-'));
  8. quit;
复制代码

使用道具

板凳
道心种魔 发表于 2011-12-12 21:01:43 |只看作者 |坛友微信交流群
感谢大家的热心帮助。LS的高手真厉害,数据步编的简明有效,小弟受教了。

使用道具

报纸
ruhuasong 发表于 2017-4-4 18:15:38 |只看作者 |坛友微信交流群
很有启发!!

使用道具

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

本版微信群
加好友,备注cda
拉您进交流群

京ICP备16021002-2号 京B2-20170662号 京公网安备 11010802022788号 论坛法律顾问:王进律师 知识产权保护声明   免责及隐私声明

GMT+8, 2024-5-11 11:33