사이트맵  |  Contact Us
 
홈 > SAS Tech & Tip > SAS 고수
[Macro, 날짜] 매크로에서 날짜 함수를 사용하여 날짜 처리 2018.06.21
백승민 251 0
http://www.mysas.co.kr/SAS_tiptech/a_all.asp?b_no=7719&gotopage=1&con=subject&keyword=&cmd=content&bd_no=33&gubun=

%LET BACK_DATE = '20180621';

 

* 날짜 계산을 위하여 '20180621'을 날짜로 변경;

%put                        %SYSFUNC(INPUTN(%SYSFUNC(SUBSTR(&BACK_DATE,2,8)),YYMMDD8.));

 

* 1개월 전 동일일자(날짜형태);

%put %SYSFUNC(INTNX(MONTH,%SYSFUNC(INPUTN(%SYSFUNC(SUBSTR(&BACK_DATE,2,8)),YYMMDD8.)),-1,SAME));

 

* 1개월 전 초일자(날짜 포맷 적용);

%put %SYSFUNC(PUTN(%SYSFUNC(INTNX(MONTH,%SYSFUNC(INPUTN(%SYSFUNC(SUBSTR(&BACK_DATE,2,8)),YYMMDD8.)),-1,BEGINNING)),YYMMDDN8.));

 

* 1개월 전 동일일자(날짜 포맷 적용);

%put %SYSFUNC(PUTN(%SYSFUNC(INTNX(MONTH,%SYSFUNC(INPUTN(%SYSFUNC(SUBSTR(&BACK_DATE,2,8)),YYMMDD8.)),-1,SAME)),YYMMDDN8.));

 

* 매크로 변수 할당;

%LET DATE_VAR = %SYSFUNC(PUTN(%SYSFUNC(INTNX(MONTH,%SYSFUNC(INPUTN(%SYSFUNC(SUBSTR(&BACK_DATE,2,8)),YYMMDD8.)),-1,SAME)),YYMMDDN8.));

 

DATA BACK;

     CHAR_DATE = "&DATE_VAR"; * 문자형 변수;

     NUM_DATE  =  &DATE_VAR ; * 수치(날짜)형 변수;

RUN;

 

 

* Note:   Instead of INPUT and PUT, which are not available with %SYSFUNC and %QSYSFUNC, use INPUTN, INPUTC, PUTN, and PUTC.

 
 
 
 
휴대폰 번호
휴대폰 인증번호
 
 [BATCH , ABORT] 배치모드에서 특정 조건(데이터 건수) 에서 전체 프로세스 멈추기
 SAS 프로그램 자동 백업 시스템 구축 예제