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

MySQL LPAD(), RPAD() 함수에 빈 문자열로 패딩하면 어떤 값이 반환될까?

LPAD(), RPAD() 함수에서 빈 문자열로 패딩할 때의 결과

LPAD() 또는 RPAD() 함수에서 패딩 문자열로 빈 문자열('')을 지정하면, MySQL은 결과값으로 NULL을 반환합니다.

그 이유는 빈 문자열에는 채울 수 있는 문자가 전혀 없어서, 지정된 목표 길이(target length)만큼 패딩하는 것이 불가능하기 때문입니다. 이 경우 MySQL은 오류를 발생시키지 않고 단순히 NULL을 반환합니다.

예제 1: LPAD() 함수 사용

mysql> Select LPAD('ABCD',22,'');

+--------------------+
| LPAD('ABCD',22,'') |
+--------------------+
| NULL               |
+--------------------+

1 row in set (0.00 sec)

예제 2: RPAD() 함수 사용

mysql> Select RPAD('ABCD',22,'');

+--------------------+
| RPAD('ABCD',22,'') |
+--------------------+
| NULL               |
+--------------------+

1 row in set (0.00 sec)

위 예제에서 볼 수 있듯이, 두 함수 모두 'ABCD'라는 문자열을 길이 22까지 빈 문자열로 채우려고 시도했지만, 결과적으로 NULL이 반환되었습니다. 따라서 LPAD()나 RPAD() 함수를 사용할 때는 반드시 유효한 패딩 문자열(예: 공백 한 칸 ' ', '0', '*' 등)을 지정해야 의도한 대로 문자열이 채워집니다.