초이준철
물낌표
초이준철
전체 방문자
오늘
어제
  • 분류 전체보기 (59)
    • Python (6)
    • SQL (37)
    • 경험 (4)
    • Tableau (7)
      • Tableau 기본 (2)
      • Tableau 빅스데이터 22여름 대학생 TWBX (5)
    • 책으로 배우는 공부 (5)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • MYSQL insert
  • MYSQL 테이블 구조
  • mysql concat
  • TWBX 대학생
  • TWBX 과제
  • 데벨챌
  • Mysql ifnull
  • MYSQL CASE문
  • mysql set
  • MYSQL group by
  • MYSQL desc
  • 통계책
  • 데이터 분석 방법
  • 물낌표
  • 데이터 심리학
  • mysql 문자열 자르기
  • MYSQL 집계함수
  • mysql 문자열 연결
  • 데이터리안
  • 새빨간 거짓말 통계

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
초이준철

?!

[MySQL] 조건에 맞는 값들을 묶어서 출력하기 GROUP_CONCAT
SQL

[MySQL] 조건에 맞는 값들을 묶어서 출력하기 GROUP_CONCAT

2022. 9. 20. 18:28

1) 예시로 기본 사용법 알아보기

- 'department1' TABLE 기본 형태

department1 TABLE

 

- GROUP_CONCAT 함수 적용한 'department1' TABLE

department1 TABLE

위와 같이 '같은 팀' 조건에 해당하는 값들을 묶어서 출력하는 쿼리는 아래와 같습니다.

SELECT team as '팀', GROUP_CONCAT(member1) as '같은팀'
FROM department1
GROUP BY team;

해당 쿼리에서 가장 중요한 것은 GROUP BY 입니다. 왜냐하면 '같은팀'으로 묶어주기 위한 '기준'이 되기 때문입니다.

즉, A팀 B팀 C팀으로 GROUP BY(그룹화)를 시켜주고,

각 팀에 해당하는 그룹들을 GROUP_CONCAT 함수로 묶어서 출력하게 되는 형식이에요.


2) 구분자 변경하기

GROUP_CONCAT를 기본적으로 사용했을 때 문자열 사이에 쉼표(,)가 붙어서 출력돼요.

문자열 사이를 구분해주는 구분자를 변경하고 싶을 때는 SEPARETOR '원하는 구분자'를 사용해주면 됩니다.

SELECT team as '팀', GROUP_CONCAT(member1 SEPARETOR '-') as '같은팀'
FROM department1
GROUP BY team;

> 결괏값


3) 중복되는 문자열이 있을 때 DISTINCT 사용

SELECT team as '팀', GROUP_CONCAT(DISTINCT member1) as '같은팀'
FROM department1
GROUP BY team;

4) 문자열 정렬이 필요할 때 ORDER BY 사용

SELECT team as '팀', GROUP_CONCAT(member1 ORDER BY member1) as '같은팀'
FROM department1
GROUP BY team;

> 결괏값


5) 중복 제거, 문자열 정렬, 구문자 변경을 함께 사용할 때 순서가 중요

* DISTINCT > ORDER BY > SEPARATOR 순

SELECT team as '팀', GROUP_CONCAT(DISTINCT member1 ORDER BY member1 SEPARETOR '-') as '같은팀'
FROM department1
GROUP BY team;

> 결괏값

저작자표시
    'SQL' 카테고리의 다른 글
    • [MySQL] 문자열 자르는 방법 SUBSTR()
    • [MySQL] COALESCE 함수로 NULL 값 처리하기 (feat. IFNULL 차이점)
    • [MySQL] 문자를 소문자 및 대문자로 바꾸는 방법 (LOWER / UPPER 함수)
    • [MySQL] 원하는 문자열 연결해서 추출하는 방법 CONCAT()
    초이준철
    초이준철
    WNWA

    티스토리툴바