MySQL에서 조건부 연결을 위해 GROUP_CONCAT 활용
데이터베이스 조작을 위해서는 데이터를 다양한 요구 사항에 맞게 다양한 형식으로 변환해야 합니다. 일반적인 작업 중 하나는 특정 식별자와 관련된 여러 값을 연결하는 것입니다. MySQL에서 GROUP_CONCAT 함수는 이러한 연결을 유연한 방식으로 수행하기 위한 강력한 도구를 제공합니다.
다음 데이터가 포함된 MySQL 테이블을 생각해 보세요.
id | Name | Value |
---|---|---|
1 | A | 4 |
1 | A | 5 |
1 | B | 8 |
2 | C | 9 |
우리의 목표는 이 데이터를 변환하는 것입니다. 특정 형식으로:
id | Column |
---|---|
1 | A:4,5,B:8 |
2 | C:9 |
이 형식을 얻으려면 GROUP_CONCAT을 활용하여 여러 항목을 연결할 수 있습니다. 각 고유 식별자와 관련된 값입니다. 솔루션에 대한 자세한 분석은 다음과 같습니다.
select id, group_concat(`Name` separator ',') as `ColumnName` from ( select id, concat(`Name`, ':', group_concat(`Value` separator ',')) as Name from mytbl group by id, Name ) tbl group by id;
설명:
대안으로 이름별로 그룹화하지 않고 모든 값을 연결하려는 경우 쿼리를 다음과 같이 수정할 수 있습니다. 다음:
select id,group_concat(concat(`name`,':',`value`) separator ',') as Result from mytbl group by id
위 내용은 MySQL의 GROUP_CONCAT은 어떻게 조건부 연결을 달성할 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!