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

MySQL UPDATE 문과 LPAD·RPAD 함수로 열 값에 문자열을 채워 테이블 업데이트하는 방법

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() 함수를 같은 방식으로 활용하여 테이블을 업데이트할 수 있습니다.