아미(아름다운미소)

MSSQL 특정 문자나 숫자 자릿수에 맞춰 0 채우기 본문

데이타베이스/MSSQL

MSSQL 특정 문자나 숫자 자릿수에 맞춰 0 채우기

유키공 2019. 3. 22. 11:35

MSSQL 특정 문자나 숫자 자릿수에 맞춰 0 채우기 (특정문자 채우기)

어떤 select 결과에 대해서 특정 길이로 맞춰서 그 길이에 못미치는 데이터에 대해서
길이만큼 특정 문자나 숫자를 채우고 때가 있습니다.
예를 들어 111, 22, 3333 -> 0000111, 0000022, 0003333 => 7자리로 맞추고자 할때 아래와 같이 합니다.
SELECT REPLICATE('채울문자', 전체길이 - LEN('데이터')) + '데이터' 

예시)
SELECT REPLICATE('0', 7 - LEN('1234')) + '1234'
결과)
0001234

* 먄약 숫자 타입인 경우
SELECT REPLICATE(0, 7 - LEN(1234)) + CONVERT(VARCHAR,1234)

* 추가 *
SELECT RIGHT('0000000' + CONVERT(NVARCHAR, '1234'), 7)​


Comments