관리 메뉴

클라이언트/ 서버/ 엔지니어 "게임 개발자"를 향한 매일의 공부일지

JOIN 심화 9 - 미션 문제 풀기 및 단원 마무리하기 본문

알고리즘 및 자료 관리/SQL

JOIN 심화 9 - 미션 문제 풀기 및 단원 마무리하기

huenuri 2024. 10. 23. 16:24

드디어 JOIN 심화 과정이 거의 끝나고 마지막 미션 문제를 푸는 일만 남아있다. 총 3문제가 있는데 하나씩 풀어볼 것이다.


 

 

 

 

미션 1 - 고객 명단 정리하기

 


 

 

 

1. 전체 테이블 조회하기

 

 

여기서 멤버 ID, 멤버이름, 멤버등급을 모두 작성해 볼 것이다. 두 테이블은 member_id로 조인을 하면 될 것 같다.


 

 

 

2. LEFT OUTER JOIN 을 이용하여 멤버 ID, 멤버 이름, 멤버 등급 조회하기

 

 

등급이 없는 고객도 LEFT OUTER JOIN으로 잘 출력되었다.


 

 

2. 등급이 없거나 BRONZE 등급인 고객만 조회하기

 

 

등급이 없는 고객은 IS NULL로 작성을 해주면 된다.

 

 

첫출발이 좋다.


 

 

 

 

 

미션 2 - 투자 포트폴리오

 

 


 

 

 

 

1. 두 테이블 전체 조회하기

 

 

이 테이블을 결합하여 코인 이름, 코인 구입 가격, 코인 현재 가격을 출력하려고 한다.


 

 

 

2. 코인 이름, 코인 구입 가격, 코인 현재 가격 조회하기

 

 

계속 뭔가 잘못되었다는 오류가 떠서 이 문제 가지고 한참을 씨름했다. 근데 나중에 알고 보니 스펠링을 잘못 쓴 거였다.


 

 

 

3. 코드 수정해 보기

 

 

 

작은 철자의 오타 하나도 있으면 실행이 되지 않으니 주의해야 한다.


 

 

 

 

 

미션 3 - 월급의 역전

 

 


 

 

 

1. 테이블 조회하기

 

 

employee_id와 manager_id로 셀프 조인을 한 다음 조건에 많은 퀴리문을 작성해 보겠다.


 

 

 

2. 셀프 조인을 활용해 상사 급여보다 자신의 급여가 높은 직원 조회하기

 

 

 

하지만 뭔가 틀렸다. 문제가 무엇일까? INNER JOIN을 하지 않았던 게 문제였다.


 

 

 

3. 코드 다시 수정하기

 

 

 

이제 모두 맞았다.


 

 

 

 

2장을 닫으며

 

 

 

 

 

 


 

 

 

학습을 마치고

드디어 2주 차 학습을 모두 마쳤다. 미션 문제도 잘 푸는 것을 보니 단원을 잘 이해했음을 느낄 수 있었다. 사실 결코 쉬운 내용이 아닌데 매일 공부를 빠짐없이 하고 이해를 한다는 것이 정말 신기하고 놀랍기도 하다.

이제 개발 공부는 내 인생에서 가장 중요한 일과 중 하나가 되었다. 이제 3주 차 공부를 시작해 볼 것이다.