Computer >> 컴퓨터 >  >> 프로그래밍 >> MySQL

MySQL에서 문자열을 다른 문자열로 채우는 방법: LPAD()와 RPAD() 함수 완벽 가이드

MySQL에는 LPAD()RPAD()라는 두 가지 문자열 함수가 있으며, 이를 활용하면 특정 문자열을 다른 문자열로 손쉽게 채울 수 있습니다. 두 함수의 차이는 채움 문자를 붙이는 방향뿐이며, 문법과 매개변수 구조는 완전히 동일합니다.

LPAD() 함수 – 왼쪽 채우기

LPAD() 함수는 이름 그대로 문자열의 왼쪽을 지정한 문자열로 채우는 기능을 합니다. MySQL에서의 기본 문법은 다음과 같습니다.

문법

LPAD(original_string, length, pad_string)

각 매개변수의 의미는 다음과 같습니다.

  • original_string: 채움 문자를 추가할 원본 문자열입니다.
  • length: 패딩 후 최종적으로 반환되는 문자열의 전체 길이입니다.
  • pad_string: 원본 문자열에 덧붙여 채울 문자열입니다.

예제

mysql> Select LPAD('My name is Ram',22,'* ');
+--------------------------------+
| LPAD('My name is Ram',22,'* ') |
+--------------------------------+
| * * * * My name is Ram         |
+--------------------------------+
1 row in set (0.00 sec)

위 예제에서 LPAD() 함수는 결과 문자열의 전체 길이가 22자가 될 때까지 문자열 왼쪽에 '* '를 반복해서 채워 넣습니다.

RPAD() 함수 – 오른쪽 채우기

RPAD() 함수는 이름 그대로 문자열의 오른쪽을 지정한 문자열로 채우는 기능을 합니다. 사용 문법은 다음과 같습니다.

문법

RPAD(original_string, length, pad_string)

매개변수의 의미는 LPAD()와 동일합니다.

  • original_string: 채움 문자를 추가할 원본 문자열입니다.
  • length: 패딩 후 최종적으로 반환되는 문자열의 전체 길이입니다.
  • pad_string: 원본 문자열에 덧붙여 채울 문자열입니다.

예제

mysql> Select RPAD('My name is Ram',22,'* ');
+--------------------------------+
| RPAD('My name is Ram',22,'* ') |
+--------------------------------+
| My name is Ram* * * *          |
+--------------------------------+
1 row in set (0.00 sec)

RPAD()는 LPAD()와 반대로, 지정한 길이가 될 때까지 문자열 오른쪽에 '* '를 반복해 채웁니다.

실무에서의 활용 사례

이 두 함수는 단순한 문자열 꾸미기를 넘어 다양한 상황에서 유용하게 사용됩니다.

  • 고정 길이 코드 생성: 주문번호나 회원번호처럼 자릿수를 맞춰야 할 때 LPAD(id, 8, '0')처럼 앞자리를 0으로 채워 '00000123' 형태를 만들 수 있습니다.
  • 데이터 정렬 및 포맷팅: 텍스트 기반 보고서나 로그 출력에서 열 폭을 일정하게 유지해 가독성을 높일 수 있습니다.
  • 표시 형식 통일: 날짜, 시간, 숫자 등을 원하는 형식으로 맞출 때 활용됩니다.

참고: 원본 문자열의 길이가 지정한 길이보다 길 경우, 두 함수 모두 초과하는 부분을 잘라내고 지정된 길이만큼만 반환한다는 점에 유의해야 합니다.