MySQL에서는 UPDATE 문과 함께 LPAD() 또는 RPAD() 함수를 사용하여 특정 열의 값에 문자열을 덧붙인 뒤 테이블을 손쉽게 업데이트할 수 있습니다. 'examination_btech' 테이블의 예시를 통해 구체적인 동작 과정을 살펴보겠습니다.
예제: RPAD()로 문자 끝에 문자열 추가하기
'course' 열의 각 값 끝에 문자열 '(CSE)'를 붙이고, 그 결과로 테이블 자체도 업데이트하고 싶다면 아래와 같은 쿼리를 실행하면 됩니다.
mysql> Update examination_btech set course = RPAD(Course, 11,'(CSE)'); Query OK, 10 rows affected (0.16 sec) mysql> Select * from examination_btech; +-----------+----------+-------------+ | RollNo | Name | Course | +-----------+----------+-------------+ | 201712001 | Rahul | B.tech(CSE) | | 201712002 | Raman | B.tech(CSE) | | 201712003 | Sahil | B.tech(CSE) | | 201712004 | Shalini | B.tech(CSE) | | 201712005 | Pankaj | B.tech(CSE) | | 201712006 | Mohan | B.tech(CSE) | | 201712007 | Yash | B.tech(CSE) | | 201712008 | digvijay | B.tech(CSE) | | 201712009 | Gurdas | B.tech(CSE) | | 201712010 | Preeti | B.tech(CSE) | +-----------+----------+-------------+ 10 rows in set (0.00 sec)
위 결과 집합에서 확인할 수 있듯이, '(CSE)' 문자열이 'course' 열의 모든 값 마지막에 성공적으로 추가되었으며 테이블 역시 함께 업데이트되었습니다.
RPAD() 함수의 동작 원리
RPAD(문자열, 전체_길이, 패딩_문자열) 형식으로 사용하며, 첫 번째 인수로 받은 값을 두 번째 인수로 지정한 길이가 될 때까지 세 번째 인수의 문자열을 오른쪽에서부터 채워 넣습니다. 위 예제에서는 'B.tech'(6자)를 11자로 만들기 위해 '(CSE)'(5자)가 오른쪽에 덧붙여져 'B.tech(CSE)'라는 최종 값이 저장된 것입니다.
반대로 문자열을 값의 시작 부분, 즉 왼쪽에 채워 넣고 싶다면 LPAD() 함수를 같은 방식으로 활용하여 테이블을 업데이트할 수 있습니다.