[LeetCode-SQL 50] 2356. Number of Unique Subjects Taught by Each Teacher

코린이·2025년 6월 3일

SQL 문제 풀이 (MySQL)

목록 보기
69/96

❓ 문제

Teacher
+-------------+------+
| Column Name | Type |
+-------------+------+
| teacher_id  | int  |
| subject_id  | int  |
| dept_id     | int  |
+-------------+------+

(subject_id, dept_id)는 이 테이블의 기본 키(고유 값을 가진 열의 조합)입니다.
이 테이블의 각 행은 teacher_id를 가진 교사가 학과 dept_id에서 subject_id 과목을 가르치고 있음을 나타냅니다.

각 교사가 대학에서 가르치는 고유 과목의 수를 계산하는 솔루션을 작성합니다.

결과 테이블을 임의의 순서로 반환합니다.

자세한 문제 내용은 사이트 참고...


❗️ 문제 풀이

WITH TMP_TB AS (
    SELECT DISTINCT
        teacher_id
        , subject_id
    FROM Teacher
)
SELECT
    teacher_id
    , COUNT(teacher_id) AS cnt
FROM TMP_TB
GROUP BY teacher_id
;



-- 다른 풀이
SELECT
    teacher_id
    , COUNT(DISTINCT subject_id) AS cnt
FROM Teacher
GROUP BY teacher_id
;

🔗 Reference

https://leetcode.com/problems/number-of-unique-subjects-taught-by-each-teacher/description/?envType=study-plan-v2&envId=top-sql-50

0개의 댓글