Development/Etc

여러 Row 의 값을 한 column으로 합쳐 표시

비완 2017. 9. 28. 14:36
반응형

주로 결과값을 가져와서 Java에서 처리하곤 했는데, SQL단에서 처리할 필요가 생겨 찾아보았다.

아래와 같이 간단하게 해결가능했다 (MySQL)

SELECT col1, col2, GROUP_CONCAT(col3)

FROM table

GROUP BY col1, col2

이렇게 하면 col3의 값이 , 로 구분되어 한 column 으로 표시된다.


아래와 같이 정렬순서나, 구분자를 지정할 수도 있다.

SELECT col1, col2, GROUP_CONCAT(col3 ORDER BY col3 desc SEPARATOR '-')

FROM table

GROUP BY co1, col2


Oracle의 경우에는 WM_CONCAT 로 가능하다고 찾았는데, 확인해보지는 못했다.

반응형

'Development > Etc' 카테고리의 다른 글

ClassDiagram 자동생성  (0) 2018.06.28
MyBatis Query에 비교문(< >) 사용하기  (0) 2017.11.28
Query 작성시 In사용  (0) 2017.07.26
문자열 자르기  (0) 2017.07.20
문자열 자르기  (0) 2017.07.03