2014年8月29日金曜日

NLDATE関数で、日付値を好きな書式で文字変換する。


以下の2つとセットの記事です。
NLTIME関数で、時間値を好きな書式で文字変換する。
NLDATM関数で、日時値を好きな書式で文字変換する。


NLDATE関数を使うと、
日付値に対して、好みの書式で文字変換できます。

構文
 NLDATE( 対象変数, 'ディスクリプタによる変換方法を指定' )

ディスクリプタ
 %Y  …  4桁の年
 %y  …  2桁の年
 %m  …  月
 %d  …  日

・ディスクリプタは大文字・小文字の違いに注意して下さい。
(例えば「%Y」と「%y」)

・第2引数はシングルクォーテーションで囲む(ダブルクォーテーションはNG)


data DT1;
  length A1 - A3 $30.;
  A = '05jan2014'd;
  A1 = nldate(A, '%Y年%m月%d日');  /* 2014年01月05日 */
  A2 = nldate(A, '%y年%m月%d日');  /* 14年01月05日 */
  A3 = nldate(A, '%y年%m月頃');      /* 14年01月頃 */
run;



上の例では「2014年01月05日」のように月と日の頭に0がつきます。
この0を取りたい場合、以下のように「%」の後に「#」を入れてやります。


data DT2;
  length A4 $30.;
  set DT1;
  A4 = nldate(A, '%Y年%#m月%#d日');  /* 2014年1月5日 */
run;



0 件のコメント:

コメントを投稿