반응형

SAP 전송을 하면서 SAP 형식에 따라 데이터를 넣어야 하는 경우 LPAD와 RPAD 함수를 많이 사용한다. SAP에서 사용하는 데이터는 16자리인데, 우리가 만든 데이터에서는 12자리인 경우에는 0을 채워야 한다.

예를 들어, PU1234567891인 경우(12자리)에는 PU12345678910000(16자리)로 0을 채워 넣어주면 된다. 이럴 때 왼쪽과 오른쪽 등에 채워줄 때 사용하는 것이 LPAD와 RPAD다.

 

1. LPAD

LPAD는 왼쪽을 기준으로, 특정 데이터에 지정한 자릿수만큼, 특정한 문자로 채운다.

- 함수 : LPAD(데이터, 자릿수, 특정 문자)

SELECT LPAD(123, 10, '0')
     , LPAD(234, 10, 'A')
     , LPAD(345, 10, 'H')
     , LPAD(567, 10, ' ')  
  FROM DUAL

 

위의 결과와 같이, 123일 때 왼쪽에서부터 0, A, H, 공백같이 채워 넣을 수 있다.

 

2. RPAD

RPAD는 오른쪽을 기준으로, 특정 데이터에 지정한 자릿수만큼, 특정한 문자로 채운다.

- 함수 : RPAD(데이터, 자릿수, 특정 문자)

SELECT RPAD(123, 10, '0')
     , RPAD(234, 10, 'A')
     , RPAD(345, 10, 'H')
     , RPAD(567, 10, ' ')  
  FROM DUAL

위의 결과와 같이, 123일 때 오른쪽에서부터 0, A, H, 공백같이 채워 넣을 수 있다.

 

예제로, 아래와 같이 사용하기도 한다.

SELECT LPAD(SEQ_TEST2.NEXTVAL,16,'0') AS TEMP FROM DUAL

반응형
  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기