mysql 질문입니다!
본문
a 테이블
wr_id | wr_name |
1 | 홍길동 |
b 테이블
wr_name | wr_job |
홍길동 | 경찰 |
홍길동 | 소방관 |
홍길동 | 간호사 |
이렇게 두 테이블이 있을때
쿼리를 사용해서 결과를
wr_id | wr_name | wr_job |
1 | 홍길동 | 경찰, 소방관, 간호사 |
이런식으로 해줄 수 있을까요?
left join 을 쓰니까
홍길동 경찰
홍길동 소방관
홍길동 간호사
이렇게 나와서요 ㅠㅠ
답변 3
GROUP_CONCAT() 를 이용하면 될 것 같습니다.
※ 참고 - https://stackoverflow.com/a/4455991
select a.wr_id, a.wr_name, x.wr_job
from a
left join (select wr_name, group_concat(wr_job serparator ', ') as wr_job
from b
group by wr_name) x on a.wr_name = x.wr_name
!-->
역시 서브쿼리는 대단합니다..배우고 갑니다.~~마르스컴퍼니님
윗분 말대로 group_concat이 답입니다.
group_concat(`컬럼명) 혹은 (기본 ,로 표시됨)
group_concat(`컬럼명
serparator '구분자 ') 형식으로 사용하시면 되고 꼭 group by와 사용하셔야 합니다.
덧, 저는 g5_board에 카테고리 정보를 만들떄 사용합니다.
답변을 작성하시기 전에 로그인 해주세요.