
4주차 subquery 연습해 보기 중에서
<From 절에 들어가는 Subquery 연습해보기> 문제인데요.
[course_id별 like 개수에 전체 인원을 붙이기] 문제에 코드스니펫 답이 아래와 같습니다.
select a.course_id, b.cnt_checkins, a.cnt_total from
( select course_id, count(*) as cnt_total from orders group by course_id )
a
inner join
( select course_id, count(distinct(user_id)) as cnt_checkins from checkins group by course_id )
b
on a.course_id = b.course_id
근데, 저는 아래처럼 쿼리를 만들었는데, 이것도 데이터는 똑같이 나왔어요.
틀린건 아닌건가요?
select c.course_id, a.cnt_total, count(DISTINCT(c.user_id)) as cnt_chekins from checkins c
inner join (
(select course_id, count(*) as cnt_total from orders
group by course_id)
) a on c.course_id = a.course_id
group by c.course_id
