DB/MySQL
MySQL GROUP CONCAT 이용하여 쿼리목록을 컬럼 하나로 보여주기 (세로를 가로로)
개발로짜
2014. 7. 9. 09:48
MySQL 세로로 뽑힌 데이터를 가로로 뽑을 수 있는 함수가 제공된다.
MySQL 5.0.19? 버전이상에 지원이 되는듯 함.
SELECT * FROM (SELECT 'TEST1' test UNION SELECT 'TEST2' test UNION SELECT 'TEST3' test UNION SELECT 'TEST4' test) TESTINFO
위와같이 가상의 목록 데이터가 존재한다고 하자
그럼 다음처럼 데이터가 출력될것이다.
이 세로형 데이터를 하나의 컬럼에 세미콜론(,)으로 구분을 주어 가로형 데이터로 출력을 해보도록 하겠다.
사용 function은
GROUP_CONCAT(컬럼명 SEPARATOR ',')
상단에 가로로 묶어줄 컬럼명은 test이므로
SELECT GROUP_CONCAT(test SEPARATOR ',') testGrp FROM (SELECT 'TEST1' test UNION SELECT 'TEST2' test UNION SELECT 'TEST3' test UNION SELECT 'TEST4' test) TESTINFO
이런식으로 GROUP_CONCAT() 함수를 사용해주게 된다면
다음과 같이 컬럼하나에 리스트 목록데이터들이 구분자로하여금 모두 들어가있는것을 확인 할 수 있을것이다.
GROUP_CONCAT 괜추한듯함.
도움이 되셨다면 공감클릭! 궁금하신점은 댓글!!