SAS 日期和时间函数

常用日期和时间函数有:           
MDY(m,d,yr) 生成yr年m月d日的SAS日期值            
YEAR(date) 由SAS日期值date得到年            
MONTH(date) 由SAS日期值date得到月            
DAY(date) 由SAS日期值date得到日            
WEEKDAY(date) 由SAS日期值date得到星期几            
QTR(date) 由SAS日期值date得到季度值            
HMS(h,m,s) 由小时h、分钟m、秒s生成SAS时间值            
DHMS(d,h,m,s) 由SAS日期值d、小时h、分钟m、秒s生成SAS日期时间值            
DATEPART(dt) 求SAS日期时间值dt的日期部分           
INTNX(interval,from,n) 计算从from开始经过n个in间隔后的SAS日期。其中interval 可以取'YEAR'、'QTR'、'MONTH'、'WEEK'、'DAY'等。            
    比如,INTNX('MONTH', '16Dec1997'd, 3)结果为1998年3月1日。注意它总是返回一个周期的开始值。       
INTCK(interval,from,to) 计算从日期from到日期to中间经过的interval间隔的个数,其中interval取'MONTH'等。比如,INTCK('YEAR', '31Dec1996'd, '1Jan1998'd)   
    计算1996年12 月31日到1998年1月1日经过的年间隔的个数,结果得2,尽管这两个日期之间实际只隔1年。        
其它日期和时间函数还有DATE、TODAY、DATETIME、DATEJUL、JULDATE、HOUR、MINUTE、SECOND 、TIME、TIMEPART等。            

例:

%let filedate ='20Nov2010'd;
data _null;                    
       sdate='16Jan2011'd;                    
       edate='16feb2011'd;                    
       actual=datdif(sdate, edate, 'act/act');                    
       days360=datdif(sdate, edate, '30/360');        
       conn='01feb2011:8:45'dt;
       servdate=datepart(conn);
       in_3m=INTNX('MONTH',&filedate,-3);
       in_6m=INTNX('MONTH',&filedate,-6);
       in_12m=INTNX('MONTH',&filedate,-12);
       intck_day=INTCK('DAY',sdate,&filedate);
       put servdate worddate.;
       put actual= days360=;                    
       format sdate yymmdd10.;                    
       format edate yymmdd10.;        
       format servdate  yymmdd10.;        
       format in_3m yymmdd10.;
       format in_6m yymmdd10.;
       format in_12m yymmdd10.;
    run;                    
    proc print data=_null;
    run;

result:

 sdate                edate       actual   days360        conn             servdate       in_3m         in_6m           in_12m       intck_day   
 2011-01-16  2011-02-16     31        30           1612169100   2011-02-01  2010-08-01  2010-05-01  2009-11-01      -57     



From:http://apple8160.blog.163.com/blog/static/79581470201141132342931/




  • 1
    点赞
  • 36
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值