본문 바로가기
MySql

MySQL 여러 행을 공백으로 구분 된 하나의 문자열로 결합

by 베이스 공부 2020. 11. 7.
반응형

그래서 이렇게 5 개의 행이 있습니다

userid, col
--------------
1, a
1, b
2, c
2, d
3, e

다음과 같이 보이도록 어떻게 쿼리합니까?

userid, combined
1, a b
2, c d
3, e

 

해결 방법

 


  SELECT yt.userid,
         GROUP_CONCAT(yt.col SEPARATOR ' ') AS combined
    FROM YOUR_TABLE yt
GROUP BY yt.userid

기본 구분 기호는 쉼표 ( ",")이므로 원하는 출력을 얻으려면 단일 공백의 SEPARATOR를 지정해야합니다.

GROUP_CONCAT에서 값의 순서를 확인하려면 다음을 사용하십시오.

  SELECT yt.userid,
         GROUP_CONCAT(yt.col ORDER BY yt.col SEPARATOR ' ') AS combined
    FROM YOUR_TABLE yt
GROUP BY yt.userid

 

참조 페이지 https://stackoverflow.com/questions/3703740

 

 

반응형

댓글