SQL을 작성 하다보면 가끔씩 문자열을 나누던가 합치는게 필요 합니다. 기본적으로 + 연산자를 이용하여 문자열들을 합칠 수 있으나 이때 문자 + 숫자 를 할때 오류가 발생 합니다.

이를 방지 하기위하여 CONCAT를 이용하면 쉽게 합칠 수 있습니다.

SELECT CONCAT('111','222','333') as str1,
	CONCAT(111,222,333) as str2,

 

문자를 합칠 때 합치는 사이에 임의 기호 같은 걸 넣을려면

SELECT CONCAT('111','-','222','-','333') as str1,
	CONCAT(111,'-',222,'-',333) as str2

 

위 코드 처럼 하나 하나씩 넣어 줘야 하는데 CONCAT_WS를 이용하면 아래처럼 간단하게 구현 할 수 있습니다.

합칠때 넣을 기호를 매개변수 제일 앞에 넣어주고 이후 합칠 문자들을 넣으면 됩니다.

SELECT CONCAT_WS('-','111','222','333') as str1,
	CONCAT_WS('-',111,222,333) as str2

 

참조 사이트 : https://gent.tistory.com/437

 

[MSSQL] 문자열 합치기 (CONCAT, +)

SQL Server에서 문자열을 합칠 때는 CONCAT 함수와 더하기(+) 연산자를 사용한다. 문자열을 합칠 때는 되도록이면 CONCAT 함수를 사용할 것을 권장하지만, 더하기 연산자를 사용하는 것이 더 익숙하기

gent.tistory.com

 

 

+ Recent posts