MySQL에서 데이터 조작과 관련된 작업을 할 때 종종 여러 컬럼의 값들을 하나로 합치거나, 여러 행의 값을 하나의 행으로 합치는 작업을 필요로 합니다. 이럴 때 유용하게 쓰이는 함수들이 바로 CONCAT과 GROUP_CONCAT입니다. MYSQL에서 검색결과 값 합치기하는 방법을 알아보도록 하겠습니다.
1. CONCAT 함수란?
CONCAT 함수는 여러 문자열을 하나로 합치는 데 사용되는 MySQL의 내장 함수입니다. 기본적인 사용 방법은 아래와 같습니다:
SELECT CONCAT(문자열1, 문자열2, ...);
2. 두 개의 컬럼값 합치기
예를 들어, 아래와 같은 테이블이 있다고 가정합시다:
column1 | column2 |
1 | A |
2 | B |
3 | C |
두 컬럼의 값을 하나로 합치려면 CONCAT 함수를 이용할 수 있습니다:
SELECT CONCAT(column1, " - ", column2) AS result FROM 테이블명;
위 쿼리를 실행하면 다음과 같은 결과를 얻을 수 있습니다:
result |
1 - A |
2 - B |
3 - C |
3. GROUP_CONCAT 함수란?
GROUP_CONCAT 함수는 여러 행의 값을 하나의 문자열로 합치는 데 사용됩니다. 주로 그룹화 작업과 함께 사용되어 그룹 내의 여러 값을 하나로 연결할 때 유용합니다.
4. 여러 행의 값을 하나로 합치기
만약 열로 된 결과를 ,로 구분하여 한 행으로 가져오고 싶을 때는 GROUP_CONCAT 함수를 사용하면 됩니다:
SELECT GROUP_CONCAT(CONCAT(column1, " - ", column2)) AS result FROM 테이블명;
위 쿼리의 실행 결과는 아래와 같습니다:
result |
1 - A,2 - B,3 - C |
5. 결론
MySQL에서 데이터 조작 작업을 수행할 때는 다양한 함수와 기능들을 활용해야 합니다. CONCAT와 GROUP_CONCAT 함수는 데이터의 구조나 형태를 원하는 방식으로 변경하는 데 매우 유용한 도구입니다. 데이터 분석이나 처리 작업을 진행할 때 이 두 함수의 활용법을 잘 기억해두면 큰 도움이 될 것입니다.
함께읽으면 좋은글
'Language > SQL' 카테고리의 다른 글
[MYSQL] 지정한 범위에서 연속 숫자 증가 업데이트(update) 하기 (0) | 2022.06.03 |
---|---|
[MYSQL] 검색한 결과 여러개 한번에 삭제 Delete 와 select에서 IN 사용하기 (0) | 2021.11.09 |
[MYSQL] AUTO_INCREMENT 증가값 초기화 및 재정렬하기 (0) | 2021.10.08 |
[MYSQL] 테이블(TABLE)과 컬럼(COLUMN)의 코멘트(COMMENT) 정보 조회하기 (0) | 2021.05.12 |
[MYSQL] 1부터 1000까지 한꺼번에 데이터 삽입(insert)하기와 1~100까지 증가하는 쿼리문(select, dual) (0) | 2021.03.03 |