You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在SAS数据步中从Datetime25.6格式提取日期和时间?

SAS数据步提取Datetime25.6格式的日期与时间

SAS中Datetime25.6是日期时间显示格式,对应的变量实际存储的是从1960年1月1日0点开始累计的秒数。要提取mm/dd/yyyy格式的日期和hh:mm:ss格式的时间,可通过以下两种方式实现:

方式一:生成带格式的数值型变量

这种方式保留SAS日期/时间的数值存储特性,同时通过格式指定显示样式:

data new_xyz;
    set xyz;
    /* 提取日期并设置为mm/dd/yyyy格式 */
    date_part = datepart(Date);
    format date_part mmddyy10.;
    /* 提取时间并设置为hh:mm:ss格式 */
    time_part = timepart(Date);
    format time_part time8.;
run;

代码说明:

  • datepart(Date):从日期时间变量Date中提取日期部分,返回SAS日期值(以1960年1月1日为起点的天数)
  • mmddyy10.:控制日期显示为mm/dd/yyyy格式(如03/15/2024)
  • timepart(Date):从日期时间变量Date中提取时间部分,返回SAS时间值(以当天0点为起点的秒数)
  • time8.:控制时间显示为hh:mm:ss格式(如10:25:47)

方式二:生成字符型日期/时间字符串

如果需要直接得到字符格式的结果,可使用put函数:

data new_xyz;
    set xyz;
    /* 生成mm/dd/yyyy格式的字符型日期 */
    date_char = put(datepart(Date), mmddyy10.);
    /* 生成hh:mm:ss格式的字符型时间 */
    time_char = put(timepart(Date), time8.);
run;

内容的提问来源于stack exchange,提问作者Harisha G

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.07 16:12:09