mysql

subquery의 결과가 여러개 일때, 한개의 필드로 가져오기

은둔한량 2013. 3. 20. 12:47
반응형

서브 쿼리의 결과가 여러 개 일때, 스트링으로 만들어서 가져 오기

[mysql string CONCAT row]

참고 사이트 : http://stackoverflow.com/questions/276927/can-i-concatenate-multiple-mysql-rows-into-one-field

핵심은 group_concat 함수를 쓰면 된다.

아래는 "|" 문자열로 서브 쿼리의 결과를 문자열로 연결해서 반환하는 쿼리이다.


뭐. 이런식으로 BTable에 있는 bookName을 "|"로 연결해서 가져오고 싶을 경우 저런 식으로 ~

SELECT
       ATable.num,
       ATable.keyword,
       (select group_concat(bookName separator '| ') from BTable where ATable.num = BTable.parentKey) as bookList
FROM ATable

 

 

반응형