我有一个使用proc在SAS中运行的SQL代码。
proc sql;
select col_A,col_B,put(date(),yymmdd10.) as col_C
from table_P;
create table_Q as
(select * from table_P);
quit;
col_C是今天的日期,并以Varchar2格式存储。我希望它能以日期格式存储。我该怎么做?我希望日期条目看起来像'2022-05-04‘。即使日期的格式发生了变化,我如何才能从Varchar进入日期数据类型呢?
发布于 2022-05-04 18:21:32
create table table_Q as
select col_A
, col_B
, date() format=yymmdd10. as col_c
from table_P;
这将将col_C存储为SAS值,但应用yyddmm10。在显示数据时格式化。
发布于 2022-05-05 03:42:17
如果您有一个字符变量,使用date ()函数通过使用YYMMDD10将其转换为日期值。信息格式。
一旦您有一个日期值(自1960年以来的天数),您就可以附加任何日期类型格式,您希望以您喜欢的样式打印日期值。
因此,如果COL_C in TABLE_P是字符变量,那么请尝试:
在正常的SAS代码中:
data table_Q;
set table_P;
datevar = input(col_c,yymmdd10.);
format datevar date9.;
run;
在PROC SQL代码中:
proc sql;
create table_Q as
select a.*,input(col_c,yymmdd10.) as datevar format=date9.
from table_P a
;
quit;
https://stackoverflow.com/questions/72117548
复制相似问题