
* 겪고 있는 문제 상황을 최대한 자세하게 작성해주세요.
* 문제 해결을 위해 어떤 시도를 해보았는지 구체적으로 함께 알려주세요.
선생님들 안녕하세요? 4주차 서브쿼리 where절 연습하기 문제를 풀다가 궁금한것이 생겨 질문드립니다.
< 저의 답안>
select * from point_users pu
where pu.point>
(SELECT u.name,round(avg(point),0) as point_avg from point_users pu2
inner join users u
on u.user_id =pu2.user_id
WHERE name='이**')
<오류가 나지 않는 정답 답안>
select * from point_users pu
where pu.point>
(SELECT round(avg(point),0) as point_avg from point_users pu2
inner join users u
on u.user_id =pu2.user_id
WHERE name='이**')
서브 쿼리안의 웨어절에서 u.name이 있을 경우에는 오류가 뜨고 없으면 정상적으로 값이 출력되더라구요, u.name이 있으면 오류가 뜨는 이유가 무엇일까요? inner join을 해놓은 상태니까 유저값에서 이름을 출력할 수 있는거 아닌가요?!ㅠㅠ 아니면 밖에 있는 selecet절에는 users의 정보가 이너조인 된 상태가 아니므로 pu값에는 name이 없어 u.name을 넣었을 경우 출력할 수 없어 오류가 뜨는건가요??
