숫자 자리수 채우기

예를 들어, 111 이란 데이터를 00111로 표현하고 싶은 경우 이번 글을 참조하여 해결 할 수 있습니다.

[mssql]
방법 : REPLACE()함수 및 LEN()함수 사용
SELECT REPLACE('자리수에 채울 문자','전체 자리수 길이 - LEN('데이터')) + '데이터'
※ 숫자 타입의 데이터의 경우
 SELECT REPLACE('자리수에 채울 문자','전체 자리수 길이 - LEN('데이터')) + CONVERT(VARCHAR, '데이터')

예) SELECT REPLACE(0, 5 - LEN(111)) + CONVERT(VARCHAR, 111) FROM 테이블명

[mysql]
방법 : LPAD()함수 사용 -> LPAD('데이터', '전체 자리수 길이', '자리수에 채울 문자')
mysql은 타입에 영향을 받지 않는 듯 합니다.

예) SELECT LPAD(111, 5, 0) FROM 테이블명

댓글