커뮤니티
포인트
쿠폰
내 강의실
국비 신청 내역
증명서
계정
로그아웃
학습 질문
개발 일지
나의 활동
답변 완료
서브쿼리 패턴 FROM에서의 질문
[왕초보] 엑셀보다 쉬운, SQL v3
4주차
북마크
전*진
댓글
3
추천
0
조회수
9
조회수
9
답변 완료

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

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


FROM 절에 서브쿼리 넣는걸 배웠습니다.

뽑아야 하는건 유저아이디, 유저별 포인트, 유저별 받은 좋아요 평균 갯수입니다.


나와야 할 결과는 아래 사진#1 과 같습니다.

[사진#1]

스파르타 즉문즉답


근데 저는 위의 결과를 얻기 위해 강의에서 배운대로 FROM절에 서브쿼리를 넣는 방식이 아닌, select 절에 넣는 방식으로 같은 결과를 만들어보고 싶습니다.


강의에서 다룬 쿼리(FROM절에 서브쿼리)는 아래와 같습니다.

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

강의에서 배운대로 하면 잘 되는데, 제가 작성한 쿼리로 실행하면 아래 사진#2 와 같은 결과가 나옵니다.

NULL이 중간중간에 포함된 형태인데요

[사진#2]

사용한 쿼리는 아래와 같습니다.

select pu.user_id,

pu.point,

(

  select avg(likes) from checkins c
  
  where user_id = pu.user_id
  
) as avg_likes
  
from point_users pu


어떻게 하면 이 쿼리를 최소한으로 변형해 NULL을 제외한 값을 얻어서 결과적으로 사진#1과 같은 결과를 얻을 수 있을까요??








취소
 공유
취소
댓글 0
댓글 알림
나의얼굴