Database/MS-SQL2013. 12. 4. 15:18

ms sql 에서 lpad 구현 꼼수

1. right 를 이용한 간단 구현

1 => 0001  형태의 4자리로 바꿔 준다.

select convert(varchar(255), right(N'0000'+rtrim('1'),4)  ) AS NO

2. replicate 를 이용한 복잡한 구현

00001234 형태의 8자리

1) 오라클 용
LPAD(TRIM(TO_CHAR(NO,'99999999')), 8, '0') NO

2) MS SQL 용
REPLICATE('0', 8 - DATALENGTH(CONVERT(VARCHAR(4), NO ))) + CONVERT(VARCHAR(4), NO ) NO

Posted by 비니미니파