스파르타코딩클럽 로고
로그인
에듀윌 × 스파르타
오직 에듀윌러만! 50% 할인 쿠폰팩 받으러 가기
전체 강의
부트캠프
국비
커뮤니티
블로그
이벤트
고객센터
기업 서비스
둘러보기
인텔리픽
신입 개발자 채용 공고를 한 곳에서
로그아웃
자유게시판
학습 질문
개발일지
나의 활동
자유게시판
학습 질문
개발일지
나의 활동
즉문즉답
7분 만에 튜터 답변 완료
Key가 달라서 결과 값이 다른 것이 맞나요???
엑셀보다 쉬운 SQL
3주차
북마크
탁*현
댓글
9
추천
0
조회수
31
조회수
31
즉문즉답
7분 만에 튜터 답변 완료

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

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



Key가 달라서 결과 값이 다른 것이 맞나요???





작성한 코드 및 에러 메세지

제가 작성한 코드

SELECT c.title , c2.week , COUNT(*) as cnt  from checkins c2 
inner join courses c on c2.course_id = c.course_id 
inner join orders o on c.course_id = o.course_id  
WHERE o.created_at >= '2020-08-01'
GROUP by c.title, c2.week
order by c.title , c2.WEEK


노션에 있는 코드

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
스파르타 즉문즉답


Key가 달라서 결과 값이 다른 것이 맞나요???


제가 느끼기에 두 가지 코드의 차이는 Order와 기존 테이블들을 Join 할 때 차이는 Key를 user_id로 했는지 course_id로 했는지 차이 밖에 모르겠어서요.


첫번째 테이블들의 join 순서를 바꾼 2가지에서는 같은 값을 얻었습니다.


첫번째 : 제가 작성한 코드

SELECT c.title , c2.week , COUNT(*) as cnt from courses c 
inner join  checkins c2 on c.course_id = c2.course_id 
GROUP by c.title, c2.week
order by c.title , c2.WEEK


두번째 : 노션에 있는 코드

select c1.title, c2.week, count(*) as cnt from checkins c2
inner join courses c1 on c2.course_id = c1.course_id
group by c1.title, c2.week
order by c1.title, c2.week


---

스파르타 즉문즉답스파르타 즉문즉답



취소
 공유
취소
댓글 0
댓글 알림
나의얼굴
목록으로