먼저 테이블을 생성해 보겠습니다.
mysql> create table GroupConcatenateDemo -> ( -> id int, -> FirstName varchar(100), -> Score int -> ); Query OK, 0 rows affected (0.61 sec)
기록 삽입
이제 레코드를 삽입해 보겠습니다.
mysql> insert into GroupConcatenateDemo values(1,'John',94); Query OK, 1 row affected (0.16 sec) mysql> insert into GroupConcatenateDemo values(2,'Bob',98); Query OK, 1 row affected (0.16 sec) mysql> insert into GroupConcatenateDemo values(4,'Carol',100); Query OK, 1 row affected (0.20 sec)
테이블에 몇 개의 레코드가 있는지 확인합니다.
mysql> select *from GroupConcatenateDemo;
다음은 출력입니다.
+------+-----------+-------+ | id | FirstName | Score | +------+-----------+-------+ | 1 | John | 94 | | 2 | Bob | 98 | | 3 | Carol | 100 | +------+-----------+-------+ 3 rows in set (0.00 sec)
GROUP_CONCAT 사용 구문
다음은 레코드를 연결하는 구문입니다.
Select column_name1,group_concat(concat(`Column_name2`,'separatorValue',`Column_name3`) separator 'separatorValue') as AliasName yourTableName group by column_name1;
다음은 예시입니다.
mysql> SELECT -> id,group_concat(concat(`FirstName`,':',`score`) separator ',') -> as FirstNameAndScore from GroupConcatenateDemo group by id;
다음은 성공적으로 레코드를 연결했음을 보여주는 출력입니다.
+------+-------------------+ | id | FirstNameAndScore | +------+-------------------+ | 1 | John:94 | | 2 | Bob:98 | | 3 | Carol:100 | +------+-------------------+ 3 rows in set (0.00 sec)