mysql에서 문자열 연결 하기 붙이기


안녕하세요. 고코더 입니다.

오늘은 MYsql에서 문자열을 합칠때 쓰는 함수인
concat() 와 concat_ws() 사용법을 알려드리겠습니다.

mssql과 오라클과 달리 함수를 이용해
합칠 수 있는건

장점이자 단점 같네요


1. CONCAT()




Mysql의 문자를 합치닌 함수 입니다. 
엑셀의 CONCAT랑 똑같은 기능의 함수입니다.

예제를 보시겠습니다.

1
2
select concat("g","o","c","o","d","e","r");
-> "gocoder"
cs

1
2
select concat("g","o","c",null,"d","e","r");
-> null
cs

concat는 이렇게 쉼표로 문자열을 합칠수 있습니다.
그런데 만약 합치는 함수 안에 null이 들어가면
결과 값도 null이 반환 됩니다.

테이블 내의 결과 값을 이용해 update를 할때 많이 쓰게 됩니다.




2. CONCAT_WS()



concat 와 같은 기능이지만 
첫번째 인자 값은 구분 값입니다. 예를 들면

첫번째 인자 값에 쉼표 , 를 넣었다면
1
2
select concat_ws(",","g","o","c","o","d","e","r");
-> "g,o,c,o,d,e,r"
cs

이렇게 글자마다 쉼표로 구분해서 결과 값이 나오게 됩니다.

그리고 null 이 존재하면 해당 존재 값은
무시하고 글자를 합칩니다.
1
2
select concat_ws(",","g","o","c","o","d","e","r",null);
-> "g,o,c,o,d,e,r"
cs


마무리


마치 엑셀을 하듯 문자열을 합치기 쉽게
함수를 만들어 놓았습니다.
편리한 Mysql



댓글을 달아 주세요