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 함수는 데이터의 구조나 형태를 원하는 방식으로 변경하는 데 매우 유용한 도구입니다. 데이터 분석이나 처리 작업을 진행할 때 이 두 함수의 활용법을 잘 기억해두면 큰 도움이 될 것입니다.
함께읽으면 좋은글
[MYSQL] GROUP_CONCAT에서 order by 정렬하기, 구분자, 한글깨짐
MySQL에서 데이터를 그룹화하며 연결하는 작업은 매우 흔한 일입니다. 이때 자주 사용되는 함수가 바로 GROUP_CONCAT()입니다. 그러나 GROUP_CONCAT()을 사용하다 보면 몇 가지 문제에 직면하게 됩니다.
devit.koreacreatorfesta.com
[MYSQL] 여러테이블에서 검색한 결과 합치기 select * select
MySQL에서 데이터를 조회할 때 때때로 여러 테이블에서의 결과를 하나의 쿼리 결과로 합치고자 하는 상황이 발생합니다. 이럴 때 SELECT 문 내부에 다른 SELECT 문을 사용하여 여러 테이블의 결과를
devit.koreacreatorfesta.com
[MYSQL] 검색한 결과를 넣기 select 하여 insert
테이블을 옮기는 작업은 데이터베이스 관리에서 자주 발생하는 작업입니다. 이때 원하는 데이터만 이전하는 방법을 알고 있으면 작업을 보다 효율적으로 수행할 수 있습니다. 테이블의 데이터
devit.koreacreatorfesta.com
[MYSQL] 검색한결과 업데이트 하기 update, select
데이터베이스에서 데이터를 관리하다 보면, 특정 조건에 맞는 데이터를 검색하여 해당 결과를 기반으로 다른 테이블의 값을 업데이트해야 할 경우가 종종 발생합니다. 이 때, UPDATE와 SELECT를 적
devit.koreacreatorfesta.com
'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 |