我有一個使用 proc SQL 在 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 進入 Date 資料型別?
uj5u.com熱心網友回復:
create table table_Q as
select col_A
, col_B
, date() format=yymmdd10. as col_c
from table_P;
這會將 col_C 存盤為 SAS 日期值,但應用 yyddmm10。呈現資料時的格式。
uj5u.com熱心網友回復:
如果您有一個字符變數,請使用 INPUT() 函式通過使用 YYMMDD10 將其轉換為日期值。提供資訊。
一旦有了日期值(自 1960 年以來的天數),您就可以附加任何日期型別格式,以便以您喜歡的樣式列印日期值。
因此,如果 TABLE_P 中的 COL_C 是字符變數,請嘗試:
在普通 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://www.uj5u.com/qukuanlian/470812.html
上一篇:在C#中查找下一次出現的日期