본문 바로가기

SQL 연습문제

[SQL 과제] Lv3. 이용자의 포인트 조회하기

 

 

내가 생각 했던건 DB별 가지고 있는 컬럼들과 key로 활용할 항목 확인

join 을 left로 할지 inner로 할 지 정하고   -> join 조건 줄 때 on 인것 기억하기

각 키값들 정하고

null 처리를 case when으로 할지 if 로 할지 결정

 

만약에 case when으로 하려고 했다면

 

 

1. if 문 활용한 경우

SELECT u.user_id,

u.email,

if(p.point is null, 0, p.point) 'point'

from users u left join point_users p on u.user_id = p.user_id # user_id 를 키로 해서 user DB와 user_point DB를 join 해야함

order by p.point desc

 

 2.case when 활용한 경우

SELECT u.user_id,

u.email,

case when p.point is null then 0

else p.point

end 'point'

from users u left join point_users p on u.user_id = p.user_id # user_id 를 키로 해서 user DB와 user_point DB를 join 해야함

order by p.point desc

 

 

결과