2013-09-30 50 views
1

有谁知道如何在SAS9.3中将日期变量从Date9更改为MMDDYY10格式?我已经使用put和输入功能尝试,但结果是空在SAS9.3中更改日期格式

+0

您需要提供更多的细节,如在本身不完全意义和你的问题。你的变量实际上是一个日期变量? – Joe

回答

0

请尝试以下两种功能:

tmpdate = put(olddate,DATE9.); 
newdate = input(tmpdate,MMDDYY10.); 

,或者甚至

newdate = input(put(olddate,DATE9.),MMDDYY10.); 
2

格式是什么,但如何显示上的说明一个值。日期是数字,表示为从1JAN1960开始的天数。

data x; 
format formated1 date9. formated2 mmddyy10.; 
noformated = "01JAN1960"d; 
formated1 = noformated; 
formated2 = noformated; 
run; 

proc print data=x; 
run; 

Obs formated1  formated2 noformated 
1  01JAN1960 01/01/1960   0 

总之,只需更改数据集的格式,日期将以新格式显示。

0

对于改变变量的格式表 - PROC SQLPROC DATASETS

data WORK.TABLE1; 
    format DATE1 DATE2 date9.; 
    DATE1 = today(); 
    DATE2 = DATE1; 
run; 

proc contents; 
run; 

proc datasets lib=WORK nodetails nolist; 
modify TABLE1; 
    format DATE1 mmddyy10.; 
quit; 

proc sql; 
alter table WORK.TABLE1 
    modify DATE2 format=mmddyy10. 
; 
quit; 

proc contents; 
run;