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