GROUP_CONCAT() 함수는 여러 값을 한 줄로 합쳐서 보여줄 수 있는 아주 유용한 함수 입니다.
특히 GROUP BY 쿼리에서 여러 값을 쉼표(,)나 원하는 구분자로 묶어 표현할 때 씁니다.
SELECT department_id, GROUP_CONCAT(employee_name) FROM employees GROUP BY department_id;
| department_id | GROUP_CONCAT(employee_name) |
| 1 | Alice,Bob,Charlie |
| 2 | David,Eve |
GROUP_CONCAT(employee_name SEPARATOR ' / ') -- → Alice / Bob / Charlie
GROUP_CONCAT(DISTINCT employee_name)
GROUP_CONCAT(employee_name ORDER BY hire_date ASC)
SET SESSION group_concat_max_len = 10000;
SELECT
u.user_id,
u.name,
GROUP_CONCAT(p.product_name ORDER BY p.product_name SEPARATOR ', ')
FROM users u JOIN purchases pu ON u.user_id = pu.user_id JOIN products p ON pu.product_id = p.product_id
GROUP BY u.user_id, u.name;
| db 테이블 생성 시 외래키 역할과 외래키를 설정하고 안하고의 차이는? (0) | 2025.05.16 |
|---|---|
| 외래키와 인덱스 관계는? (0) | 2025.05.12 |
| SQL 쿼리에서 문자열 검색 조건 REGEXP 사용하는 방법은? (0) | 2025.04.13 |
| SQL 데이터베이스 사용 횟수 별 사용자 수 구하는 쿼리 예시 (0) | 2025.03.30 |
| mysql workbench table inspector 클릭 시 unhandled exception: invaild column partition_name for resultset 오류 (0) | 2025.03.29 |