質問

" 30JUL2009" d などのSAS日付を YYYYMMDD 形式(20090730など)に変換するにはどうすればよいですか?

例えば:

data _null_;
  format test ?????;
  test=today();
  put test=;
run;

「test = 20090730」を教えてくださいログに...

役に立ちましたか?

解決

data _null_;
    format test yymmddn8.;
    test=today();
    put test=;
run;

YYMMDDxw。ドキュメント

他のヒント

%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を指定できます。

ここでマクロで行った方法ですが、確かにフォーマットが必要ですか?? !!!

%let today=%sysfunc(compress(%sysfunc(today(),yymmddd10.),'-'));

その奇妙な-INFORMAT yymmdd8。 YYYYMMDDの結果が得られますが、FORMAT yymmdd8は結果です。 YY-MM-DDの結果を返します!!

このトリックも行うべきものがあります

%let today=%sysfunc(today(),yymmddn8.);
%put &today.;

以下のリンク上のすべて

https://communities.sas.com/thread/60111

[インデックス]タブに「日付」と入力して[日付と時刻の形式]を選択すると、[ヘルプ]タブにすべての日付と時刻の形式が表示されます

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top