
SELECT pu.user_id, pu.point, a.avg_likes from point_users pu
inner join(
SELECT user_id, round(avg(likes),1) as avg_likes from checkins c
group by user_id
) a on pu.user_id = a.user_id
SELECT * from
(
SELECT course_id, COUNT(DISTINCT(user_id)) as cnt_checkins from checkins
group by course_id
)a
inner JOIN
(
SELECT course_id , count(*) as cnt_total from orders
group by course_id
) b on a.course_id = b.course_id
두 방식의 join이 있는데 밑에 거를 위에 것처럼 join을 하니까 에러가 납니다. 차이가 무엇인가요?
에러가 나는 방식은 밑에 있습니다.
SELECT c.course_id, COUNT(DISTINCT (c.user_id)) from checkins c
group by c.course_id
inner join
(
select o.course_id, count(*) from orders o
group by o.course_id
) a on c.course_id = a.course_id
