테스트 사이트 - 개발 중인 베타 버전입니다

join시 중복되지 않는 리스트도 출력 채택완료

밀랍 3년 전 조회 1,089

</p>

<p>  select a.mb_name, b.mb_id, c.mb_id, count(*) as cnt

          from g5_member a

                   inner join g5_write_csorder b on a.mb_id = b.mb_id

                   inner join g5_write_cscenter c on b.mb_id = c.mb_id

         group by a.mb_name </p>

<p>

 

회원테이블에

csoder 과 cscenter 테이블을 join 시켰습니다.

 

현재는 cscenter, csorder 두곳 모두 겹치는 데이터만 출력되는데

겹치지 않는 데이터도 출력하고 싶습니다.

 

full 를 쓰면 나올거 같아서 해봤는데.. 에러가 뜨는군요..

</p>

<p>select a.mb_name, b.mb_id, c.mb_id, count(*) as cnt from g5_member a full join g5_write_csorder b on a.mb_id = b.mb_id full join g5_write_cscenter c on b.mb_id = c.mb_id group by a.mb_name</p>

<p>1064 : You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'full join g5_write_csorder b on a.mb_id = b.mb_id full join g' at line 3</p>

<p>

이렇게 에러가 뜹니다...

 

어떻게 해야 겹치지 않는 데이터도 출력이 되는지 궁금합니다.

댓글을 작성하려면 로그인이 필요합니다.

답변 1개

채택된 답변
+20 포인트

실적이 없는(csoder, cscenter에 mb_id가 없는) 회원도 나오게 하려면

left join하는 것이 맞습니다.

주의하실 것은 조인 조건은 모두 on 조건에 써야 합니다.

 

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

밀랍
3년 전
감사합니다.

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인