join시 중복되지 않는 리스트도 출력

join시 중복되지 않는 리스트도 출력

QA

join시 중복되지 않는 리스트도 출력

답변 1

본문


  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 

 

회원테이블에

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

 

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

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

 

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


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
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

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

 

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

이 질문에 댓글 쓰기 :

답변 1

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

left join하는 것이 맞습니다.

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

 

답변을 작성하시기 전에 로그인 해주세요.
QA 내용 검색
질문등록
  • 질문이 없습니다.
전체 0
© SIRSOFT
현재 페이지 제일 처음으로