【发布时间】:2021-12-30 07:57:34
【问题描述】:
我正在尝试将今天的日期列添加到我现有的数据集中。我正在使用上一个问题中提供的方法。我的代码如下:
proc sql;
alter table data1 add today_date char label= "Today's Date" format = $8.;
update data1 set today_date= today();
quit;
但是,我收到以下错误:
327 proc sql;
328 alter table data1 add today_date char label= "Today's Date" format = $8.;
NOTE: Table DATA1 has been modified, with 11 columns.
329 update data1 set today_date= today();
ERROR: today_date, a character column, can only be updated with a character expression.
330 quit;
这样做的目的是计算数据集中存在的已开立账户的天数。根据我的理解,任期可以使用今天的日期和开户时间之间的差异来计算。
谢谢
【问题讨论】:
-
如果您希望 TODAY_DATE 包含 DATE 值,为什么要将其定义为字符变量? SAS 将 DATE 值存储为数字。