본문 바로가기

사전캠프 퀘스트

10) 이젠 테이블이 2개입니다

다음과 같은 직원(employees) 테이블과 부서(departments) 테이블이 있습니다.

  • employees 테이블
id  department_id  name
1 101 르탄이
2 102 배캠이
3 103 구구이
4 101 이션이
  • departments 테이블
id  name
101 인사팀
102 마케팅팀
103 기술팀
  1. 현재 존재하고 있는 총 부서의 수를 구하는 쿼리를 작성해주세요!
    • SELECT count(*) AS "부서의 수" FROM departments; 
  2. 모든 직원과 그들이 속한 부서의 이름을 나열하는 쿼리를 작성해주세요!
    • SELECT e.name, d.name 
      FROM employees e 
      JOIN departments d 
      ON e.department_id = d.id;
  3. '기술팀' 부서에 속한 직원들의 이름을 나열하는 쿼리를 작성해주세요!
    • SELECT e.name 
      FROM employees e 
      JOIN departments d ON e.department_id = d.id 
      WHERE d.name = "기술팀";
  4. 부서별로 직원 수를 계산하는 쿼리를 작성해주세요!
    • SELECT d.name, count(e.id) AS "직원 수"
      FROM employees e
      JOIN departments d ON e.department_id = d.id
      GROUP BY e.department_id;
  5. 직원이 없는 부서의 이름을 찾는 쿼리를 작성해주세요!
    • SELECT d.name AS "직원이 없는 부서" 
      FROM departments d 
      left JOIN employees e ON  e.department_id = d.id 
      WHERE isnull(e.name);
  6. '마케팅팀' 부서에만 속한 직원들의 이름을 나열하는 쿼리를 작성해주세요!
    • SELECT e.name AS "마케팅팀 직원 이름"
      FROM employees e
      JOIN departments d ON e.department_id = d.id
      WHERE d.name = "마케팅팀";