如何轉換爲SAS日期,例如"30JUL2009"d
爲YYYYMMDD
格式(如20090730)?SAS日期 - 今日()轉換爲YYYYMMDD格式
因此,例如:
data _null_;
format test ?????;
test=today();
put test=;
run;
能給我「考= 20090730」在日誌中...
如何轉換爲SAS日期,例如"30JUL2009"d
爲YYYYMMDD
格式(如20090730)?SAS日期 - 今日()轉換爲YYYYMMDD格式
因此,例如:
data _null_;
format test ?????;
test=today();
put test=;
run;
能給我「考= 20090730」在日誌中...
data _null_;
format test yymmddn8.;
test=today();
put test=;
run;
這裏是我做到了在宏觀,但肯定有一定的格式? !
%let today=%sysfunc(compress(%sysfunc(today(),yymmddd10.),'-'));
它的奇怪 - INFORMAT yymmdd8。給出YYYYMMDD結果,而FORMAT yymmdd8。給YY-MM-DD結果!!
%let expectdate1=%sysfunc(putn(%eval(%sysfunc(today())-1),yymmddn8.));
您要使用的格式yymmddn8。 'n'表示沒有分隔符。
根據http://support.sas.com/kb/24/610.html您可以指定B代表空白,C代表冒號,D代表破折號,N代表無分隔符,P代表週期或S代表斜槓。
你可以看到在幫助選項卡中所有的日期和時間格式,當你輸入「日期」來索引選項卡,然後selecr「日期和時間格式」
有這一個應該做的伎倆太
%let today=%sysfunc(today(),yymmddn8.);
%put &today.;
一切以下鏈接
優秀的 - 不知道有關的分隔符選項 – 2009-07-31 08:13:33
嗯。也許我做錯了什麼,但格式適合我的是:format test yymmddn8 .; – pinegulf 2017-05-29 12:12:33
謝謝@pinegulf,我更新了答案。只花了8年的時間纔有人抓住這個! – adam 2017-08-09 16:52:52