생각을 많이 하여 GROUP BY 개념을 사용하게 되는 케이스가 생겨 정리에 대한 필요성이 생겨 포스팅하고자 한다.
<< 사례 >>
어느 회사에서, 개인별로 자신과 동일한 부서에 일하는 직원 수가 몇 명인지 조회하는 쿼리가 필요하다.
EMPLOYEES 테이블에서 ID, 이름(NAME), 부서(DEPARTMENT) 정보가 주어질 때 쿼리를 작성해보자.
<< Query >>
SELECT e.ID, e.NAME, COUNT(c.ID) AS COUNT_COWORKER
FROM EMPLOYEES e
JOIN EMPLOYEES c ON e.DEPARTMENT = c.DEPARTMENT AND e.ID <> c.ID
GROUP BY e.ID, e.NAME
ORDER BY e.ID ASC
;
즉, 자체 테이블을 자가 결합하는 방법을 사용한다.
'IT > SQL' 카테고리의 다른 글
[MySQL] JSON_TABLE (0) | 2023.09.14 |
---|---|
SQLD 내용 정리 4 (0) | 2021.04.11 |
SQLD 내용 정리3 (0) | 2021.04.04 |
SQLD 내용 정리2 (0) | 2021.03.28 |
SQLD 내용 정리1 (0) | 2021.03.21 |