在 SAS Enterprise Guide 中创建格式为 YYYY-MM-DD HH:MM_SS 的宏
Create a macro with format YYYY-MM-DD HH:MM_SS in SAS Enterprise Guide
我需要用宏将这个日期放入 sas 中:'2019-01-14 00:00:00'
现在我有:
%let fecha=%SYSFUNC(PUTN(%SYSFUNC(TODAY()),E8601DT20.));
结果是:
1960-01-01T05:59:31
但这不对,今天不是 1960 年,我需要没有 T 的日期
有谁能够帮我?
您不能将日期时间格式应用于日期值。日期存储为天数,日期时间存储为秒数。
%let fecha=%SYSFUNC(TODAY(),yymmdd10) 00:00:00;
如果您想将其用作字符串,只需添加引号即可。例如,您可以使用此语句从宏变量的值在数据步骤中创建字符变量。
datestr = "&fecha";
但如果您需要单引号(可能生成直通 SQL 代码),那么它会有点困难,因为宏处理器通常会忽略单引号内的字符串。
%let fecha2=%unquote(%bquote('%SYSFUNC(TODAY(),yymmdd10) 00:00:00'));
我需要用宏将这个日期放入 sas 中:'2019-01-14 00:00:00'
现在我有:
%let fecha=%SYSFUNC(PUTN(%SYSFUNC(TODAY()),E8601DT20.));
结果是:
1960-01-01T05:59:31
但这不对,今天不是 1960 年,我需要没有 T 的日期
有谁能够帮我?
您不能将日期时间格式应用于日期值。日期存储为天数,日期时间存储为秒数。
%let fecha=%SYSFUNC(TODAY(),yymmdd10) 00:00:00;
如果您想将其用作字符串,只需添加引号即可。例如,您可以使用此语句从宏变量的值在数据步骤中创建字符变量。
datestr = "&fecha";
但如果您需要单引号(可能生成直通 SQL 代码),那么它会有点困难,因为宏处理器通常会忽略单引号内的字符串。
%let fecha2=%unquote(%bquote('%SYSFUNC(TODAY(),yymmdd10) 00:00:00'));