* 겪고 있는 문제 상황을 최대한 자세하게 작성해주세요.
* 문제 해결을 위해 어떤 시도를 해보았는지 구체적으로 함께 알려주세요.
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
---