如何将日期字段转换为此格式2018 / 01



我的表中有一个日期字段作为字符"01jan2017"

我想日期字段转换为这种格式"2018 / 01"并且正斜杠之间应该有空格。

谢谢

如果您正在寻找的只是为了显示,那么这里有一个字符转换

data r;
date = '01jan2017'd;
date1 = compbl(put(year(date),best.)|| " / "||put(month(date),z2.));
run;

您需要执行三个关键步骤:

catx(' / ',year(input(date_char,date9.)),put(month(input(date_char,date9.)),z2.));
  1. 将日期转换为date9.格式以提取年份和月份,
  2. 使用月份的z2.格式获取前导零,
  3. 使用Catx()连接年、月和 '/'。

完整代码:

data want;
date_char="01jan2017";
dateYYMM=catx(' / ',year(input(date_char,date9.)),put(month(input(date_char,date9.)),z2.));
run;

输出:

date_char=01jan2017 dateYYMM=2017 / 01

最新更新