SAS 日期时间值在内部表示为等于自 1960 年 1 月 1 日以来的秒数的浮点值。 FORMATS
用于控制这些数值如何在外部表示。例如,考虑一下:
data have;
myDateTime1 = '14-Jan-2013 07:00:00.479'dt;
myDateTime2 = '14-Jan-2013 07:00:00.479'dt;
myDateTime3 = '14-Jan-2013 07:00:00.479'dt;
format myDateTime2 datetime23.3
myDateTime3 E8601DT23.3;
put myDateTime1= 'as a number'
/ myDateTime2= 'as a normal SAS datetime'
/ myDateTime3= 'as an ISO 8601 datetime'
;
run;
运行时,这会显示在 SAS 日志中:
myDateTime1=1673766000.5 as a number
myDateTime2=14JAN2013:07:00:00.479 as a normal SAS datetime
myDateTime3=2013-01-14T07:00:00.479 as an ISO 8601 datetime
请注意,这三个myDateTime
变量具有相同的值,但根据format
指定的值显示不同。
假设您已获得 SAS Access to PC File Formats 许可,您可以使用它PROC EXPORT
来创建 Excel 工作簿:
proc export data=have
outfile='c:\temp\test_dates.xlsx'
replace;
run;
Excel 工作簿中格式化为“日期时间”值的两个变量的数据值将正确显示为 Excel 列。但是,Excel 中的默认格式仅显示“日期”部分;要在 Excel 中显示完整值,您需要更改 Excel 列格式。