커뮤니티
포인트
쿠폰
내 강의실
국비 신청 내역
증명서
계정
로그아웃
학습 질문
개발 일지
나의 활동
답변 완료
3-4 강의 13번 [퀴즈] Join 연습5
[왕초보] 엑셀보다 쉬운, SQL v3
3주차
북마크
이*은
댓글
4
추천
0
조회수
13
조회수
13
답변 완료

* 겪고 있는 문제 상황을 최대한 자세하게 작성해주세요.

* 문제 해결을 위해 어떤 시도를 해보았는지 구체적으로 함께 알려주세요.


연습5번 질문 있습니다! (*문제: 연습4번 + 8/1일 이후에 구매한 고객들만 발라내기)

select c1.title, c2.week, count(*) as cnt from courses c1

inner join checkins c2 on c1.course_id = c2.course_id

inner join orders o on c2.user_id = o.user_id

where o.created_at >= '2020-08-01'

group by c1.title, c2.week

order by c1.title, c2.week

>>이거는 정답 코드인데요.

checkins 테이블과 orders 테이블을 연결할 때 user_id 뿐만 아니라 course_id도 서로 겹치는 필드인데

왜 user_id로만 연결해야 (강의자료에 캡쳐되어 있는) 정답 결과가 나오는 걸까요?

course_id로 연결하면 count(*)값이 다르게 나오던데 왜 그런거죠?



고 계신 화면 전체를 캡처해 주시면, 튜터님들이 빠르게 상황을 이해할 수 있어요.


>>아래는 checkins 테이블과 orders 테이블을 course_id로 연결했을 때 나오는 결과 화면입니다.

스파르타 즉문즉답




select c1.title, c2.week, count(*) as cnt from courses c1

inner join checkins c2 on c1.course_id = c2.course_id

inner join orders o on c2.course_id = o.course_id

where o.created_at >= '2020-08-01'

group by c1.title, c2.week

order by c1.title, c2.week


취소
 공유
취소
댓글 0
댓글 알림
나의얼굴