[MSSQL] REPLICATE 함수 사용법 (문자열 반복)
- 데이터베이스/MSSQL
- 2025. 5. 13.
SQL Server에서 특정 문자열을 반복해서 출력하고 싶을 때, 가장 유용하게 사용할 수 있는 방법이 REPLICATE 함수이다. 공백을 여러 번 추가하거나, 특정 문자를 반복해서 포맷을 맞춰야 할 때, 직접 문자열을 여러 번 붙이는 방식은 비효율적이고 가독성도 떨어진다. 이럴 때 REPLICATE 함수를 사용하면 깔끔하게 반복 문자열을 만들 수 있으며, 공백 추가, 패턴 생성, 자릿수 정렬 등 다양한 실무 상황에 활용할 수 있다.
목차 |
REPLICATE 함수 기본 사용법
SELECT REPLICATE('A', 2) AS result1
, REPLICATE('A', 5) AS result2
, REPLICATE('A', 10) AS result3
![]() |
REPLICATE('문자열', '반복 횟수')
REPLICATE 함수는 특정 문자열을 원하는 횟수만큼 반복하여 하나의 결과 문자열로 만들 때 사용한다.
컬럼명 | 결과 문자열 | 설명 |
result1 | AA | 'A' 문자를 2번 반복 |
result2 | AAAAA | 'A' 문자를 5번 반복 |
result3 | AAAAAAAAAA | 'A' 문자를 10번 반복 |
SELECT REPLICATE('ABC', 2) AS result1
, REPLICATE('ABC', 5) AS result2
![]() |
위의 예제는 'ABC'라는 문자열을 각각 2번, 5번 반복하여 어떤 결과가 나오는지 보여준다.
REPLICATE 함수 활용 방법
자릿수 맞춰서 '0' 채우기
SELECT RIGHT(REPLICATE('0', 5) + CAST(4 AS VARCHAR), 5) AS result1
, RIGHT(REPLICATE('0', 5) + CAST(44 AS VARCHAR), 5) AS result2
, RIGHT(REPLICATE('0', 5) + CAST(444 AS VARCHAR), 5) AS result3
![]() |
위의 예제는 숫자의 앞을 '0'으로 채워 자릿수 맞추어 5자리 문자열을 만들 때 사용한다.
컬럼명 | 결과 | 설명 |
result1 | 00004 | 1자리 숫자 앞에 0을 4개 채움 |
result2 | 00044 | 2자리 숫자 앞에 0을 3개 채움 |
result3 | 00444 | 3자리 숫자 앞에 0을 2개 채움 |
공백 채우기
SELECT 'SQL' + REPLICATE(' ', 1) + 'Server' AS [공백1]
, 'SQL' + REPLICATE(' ', 2) + 'Server' AS [공백2]
, 'SQL' + REPLICATE(' ', 3) + 'Server' AS [공백3]
, 'SQL' + REPLICATE(' ', 4) + 'Server' AS [공백4]
, 'SQL' + REPLICATE(' ', 5) + 'Server' AS [공백5]
![]() |
위의 예제는 지정된 횟수만 큰 공백을 생성하여 채우는 방법이다.
조직도 들여 쓰기
WITH dept AS (
SELECT 0 AS lvl, '부서' AS dname
UNION ALL
SELECT 1, '개발팀'
UNION ALL
SELECT 2, '백엔드'
UNION ALL
SELECT 2, '프론트엔드'
UNION ALL
SELECT 1, '영업팀'
)
SELECT REPLICATE(' ', lvl) + '- ' + dname AS dept_tree
FROM dept
![]() |
조직도나 메뉴 구성처럼 계층적인 데이터를 들여 쓰기나 기호를 반복해서 사용하여 시각적으로 표현하고 싶을 때 사용할 수 있다.