카테고리 없음

Oracle 문자 채우기 LPAD와 RPAD의 활용법

liferevieweman 2025. 5. 7. 09:57
반응형

Oracle 데이터베이스에서 문자열을 처리하는 과정에서 특정한 문자로 문자열의 길이를 맞추고, 부족한 부분을 채우는 작업은 매우 중요합니다. 이때 유용하게 사용되는 함수가 바로 LPADRPAD입니다.

 

본 글에서는 이 두 함수의 개념과 사용법, 그리고 다양한 활용 예제에 대해 자세히 설명드리겠습니다.

 

Oracle 문자 채우기 LPAD와 RPAD의 활용법

 

LPAD와 RPAD의 기본 개념

LPAD와 RPAD 함수는 문자열을 일정한 길이로 맞추기 위해 특정한 문자로 채우는 기능을 제공합니다. LPAD는 문자열의 왼쪽에, RPAD는 오른쪽에 특정 문자를 추가하여 원하는 문자열 길이를 만들어 냅니다.

 

이 두 함수는 SQL 쿼리에서 자주 사용되며, 특히 데이터 포맷팅에 유용합니다.

LPAD 함수

LPAD 함수의 기본 구문은 다음과 같습니다.

LPAD(문자열, 총길이, 패딩문자)
  • 문자열: 길이를 맞추고자 하는 원본 문자열입니다.
  • 총길이: 결과 문자열의 총 길이입니다.
  • 패딩문자: 문자열의 왼쪽에 추가할 문자입니다. 만약 패딩문자가 주어지지 않으면 기본적으로 공백이 사용됩니다.

LPAD 함수는 주어진 문자열의 길이가 총길이보다 짧을 경우, 부족한 부분을 패딩문자로 채워 결과를 반환합니다.

RPAD 함수

RPAD 함수의 구문은 LPAD와 유사하지만, 패딩이 문자열의 오른쪽에 추가된다는 점이 다릅니다.

RPAD(문자열, 총길이, 패딩문자)
  • 문자열: 길이를 맞추고자 하는 원본 문자열입니다.
  • 총길이: 결과 문자열의 총 길이입니다.
  • 패딩문자: 문자열의 오른쪽에 추가할 문자입니다.

RPAD 함수 또한 주어진 문자열의 길이가 총길이보다 짧을 경우, 부족한 부분을 패딩문자로 채워 결과를 반환합니다.

LPAD와 RPAD의 사용 예시

아래 표는 LPAD와 RPAD 함수를 사용한 예시입니다.

함수 입력 출력
LPAD LPAD('abc', 5, '0') 00abc
RPAD RPAD('abc', 5, '0') abc00

위의 예시에서 LPAD는 'abc' 문자열의 왼쪽에 '0'을 추가하여 총 길이가 5인 문자열 '00abc'를 생성합니다. 반면 RPAD는 오른쪽에 '0'을 추가하여 'abc00'을 생성합니다.

 

삼성전자 갤럭시 핏3 스마트... 보러가기

LPAD와 RPAD의 활용 예제

이제 LPAD와 RPAD의 다양한 활용 방법에 대해 살펴보겠습니다. 이러한 함수들은 데이터베이스에서 데이터를 정리하고, 가독성을 높이며, 특정 형식으로 데이터를 출력하는 데 큰 도움을 줍니다.

1. 코드 자릿수 맞추기

예를 들어, 지역 코드를 '000XXX' 형식으로 맞춰야 하는 경우가 있습니다. 이때 LPAD를 사용하여 코드의 왼쪽에 '0'을 채워줍니다.

 

아래의 예시를 통해 확인해 보겠습니다.

SELECT LPAD(지역코드, 6, '0') AS 포맷된_코드
FROM 지역코드_테이블;

위 쿼리는 지역 코드가 6자리로 맞춰지도록 '0'으로 패딩합니다. 예를 들어, '23'이라는 지역 코드는 '000023'으로 변환됩니다.

지역 코드 포맷된 코드
23 000023
5 000005
123 000123

2. 사용자 정보 가리기

개인 정보 보호를 위해 사용자 정보의 일부를 가리는 경우 LPAD와 RPAD를 조합하여 사용할 수 있습니다. 예를 들어, 주민등록번호의 앞 7자리만 표시하고 나머지는 '*'로 가리는 예시를 들어보겠습니다.

SELECT LPAD(SUBSTR(주민등록번호, 1, 7), 14, '*') AS 보호된_주민등록번호
FROM 사용자_정보_테이블;

위 쿼리는 주민등록번호의 앞 7자리를 추출한 후, 나머지 부분을 '*'로 채워 총 14자의 문자열을 생성합니다.

주민등록번호 보호된 주민등록번호
123456-1234567 123456****
987654-9876543 987654****

3. 전화번호 형식 맞추기

전화번호의 형식을 맞추는 데에도 LPAD와 RPAD를 사용할 수 있습니다. 예를 들어, 전화번호의 뒷 4자리만 표시하고 나머지는 '*'로 가리는 경우 다음과 같은 쿼리를 사용할 수 있습니다.

SELECT RPAD(SUBSTR(전화번호, -4), 10, '*') AS 보호된_전화번호
FROM 연락처_테이블;

위 쿼리는 전화번호의 뒷 4자리를 추출한 후, 나머지 부분을 '*'로 채워 총 10자의 문자열을 생성합니다.

전화번호 보호된 전화번호
010-1234-5678 *****5678
02-123-4567 *****4567

4. 다양한 문자 처리

LPAD와 RPAD는 문자열의 길이를 맞추는 기본적인 기능 외에도 다양한 문자를 처리하는 데 유용합니다. 예를 들어, 영어와 한글이 혼합된 문자열을 처리할 때는 LENGTH와 LENGTHB 함수를 함께 사용하여 바이트 수를 생각해야 합니다.

 

아래 예시를 통해 확인해 보겠습니다.

SELECT LPAD('안녕하세요', 12, '*') AS 왼쪽패딩,
       RPAD('안녕하세요', 12, '*') AS 오른쪽패딩
FROM DUAL;

위 쿼리는 한글 문자열 '안녕하세요'에 대한 LPAD와 RPAD의 결과를 보여줍니다.

왼쪽 패딩 오른쪽 패딩
*****안녕하세요 안녕하세요*****

이와 같이 LPAD와 RPAD는 문자열의 길이를 맞추고, 가독성을 높이기 위해 다양한 상황에서 활용될 수 있습니다.

결론

Oracle의 LPAD와 RPAD 함수는 문자열을 효과적으로 처리하고, 데이터의 가독성을 높이며, 데이터 포맷을 일관되게 유지하는 데 큰 도움이 됩니다. 이러한 함수는 다양한 응용 프로그램에서 필수적으로 사용되며, 특히 데이터베이스에서 중요한 역할을 합니다.

 

본 글에서 소개한 예시들을 통해 LPAD와 RPAD의 활용 방법을 잘 이해하셨기를 바랍니다. 앞으로 데이터베이스를 다루는 과정에서 이 함수를 적극적으로 활용해 보시기 바랍니다.

관련 영상

같이보면 좋은 글

 

 

삼성전자 갤럭시 핏3 스마트 건강 관리의 새로운 기준

삼성전자의 갤럭시 핏3는 최근 시장에 출시된 최신 스마트 밴드로, 운동과 건강 관리에 특화된 기능을 제공합니다. 전작인 갤럭시 핏2에 비해 여러 면에서 업그레이드 되었으며, 사용자에게 더

liferevieweman.tistory.com

 

 

교통사고 형사합의금 24억 6천만원 사례 분석

안녕하세요. 법무법인 태신의 교통사고 전문 변호사입니다. 오늘은 교통사고와 관련하여 발생할 수 있는 형사합의금의 사례를 심도 있게 분석해보려 합니다. 특히, 24억 6천만원이라는 막대한

liferevieweman.tistory.com

 

 

쥐젖 제거 후 음주, 주의사항 알아보기

쥐젖은 피부의 오돌토돌한 돌기로, 미용적인 이유로 많은 사람들이 제거를 고민하게 됩니다. 특히 쥐젖 제거 후 관리와 주의사항은 매우 중요합니다. 특히, 쥐젖을 제거한 후 음주를 고려하고

liferevieweman.tistory.com

반응형