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

如何在PROC FEDSQL中将YYMMDD格式字符值转换为日期格式?

在PROC FEDSQL中转换YYMMDD字符列为数值型日期的方法

PROC FEDSQL提供两种常用方式实现需求,下面分别说明:

方法1:沿用PROC SQL的INPUT()函数写法

FEDSQL支持SAS的INPUT()函数配合日期格式,直接复用你熟悉的逻辑即可:

proc fedsql;
    select 
        INPUT(date_column, YYMMDD6.) as numeric_date format=YYMMDD10.
    from your_table;
quit;
  • INPUT(date_column, YYMMDD6.):将字符型的date_column按6位YYMMDD格式解析为SAS数值型日期(存储为1960年1月1日以来的天数)
  • format=YYMMDD10.:可选参数,用于将结果显示为2013-04-01这类易读格式

方法2:使用ANSI兼容的DATE_PARSE()函数

如果偏好标准SQL风格的函数,可使用DATE_PARSE()指定格式字符串解析:

proc fedsql;
    select 
        DATE_PARSE(date_column, 'YYMMDD') as numeric_date format=YYMMDD10.
    from your_table;
quit;
  • DATE_PARSE(date_column, 'YYMMDD'):按照指定的格式规则解析字符日期,返回SAS数值型日期
  • 格式字符串需与输入字符的格式严格匹配,此处'YYMMDD'对应6位的年份后两位+月份+日期格式

两种方法最终都会生成SAS标准的数值型日期,可直接用于后续的日期计算或格式化输出。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.16 01:37:03