[오라클 SQL] COUNT함수를 이용하여 학년 별 학생 수 구하는 방법




 

안녕하세요~~

 

오늘은 오라클 Count함수를 가지고 실제 어떻게 사용을 하는지 예시를 통하여 한번 보여드리려고 해요!

 

제가 오늘 보여드릴 예제는 학생 테이블, 선생 테이블에서 각 선생님이 맡고있는 담당 학생 수를 구하는 방법을 보여드리려고 합니다!

 

그럼 SQL 문을 통하여 천천히 어떻게 학생 수를 추려내는지 단계 별로 보여 드리릴게요ㅎㅎ




1단계 - 해당 Table 조회(Student, Teacher)


1

2

3

4

5

6

7

8

9

10

11

SELECT *

FROM WIN.STUDENT

WHERE 1 = 1

 

;

 

SELECT *

FROM WIN.TEACHER

WHERE 1 = 1

 

;

cs

 

(Student) - 조회결과



(Teacher) - 조회결과



2단계 - 전체 학생, 선생 수 조회


1

2

3

4

5

6

7

8

9

10

11

SELECT COUNT(*) AS STUDENT_CNT

FROM WIN.STUDENT

WHERE 1 = 1 

 

;

 

SELECT COUNT(*) AS TEACHER_CNT

FROM WIN.TEACHER

WHERE 1 =1 

 

;

cs


 

(Student 전체 데이터 수) - 조회결과




(Teacher 전체 데이터 수) - 조회결과



3단계 - 각 담임 선생님이 맡은 반의 전체 학생 수 구하기


1

2

3

4

5

6

7

8

9

10

 

SELECT stu.SCHOOL_NO AS School_Name, stu.CLASS, 

tea.Name AS Teacher_Name,  COUNT(*) Student_Count_From_Teacher

FROM WIN.STUDENT stu

INNER JOIN WIN.TEACHER tea

ON (stu.SCHOOL_NO = tea.SCHOOL_NO AND  stu.CLASS = tea.CLASS)   

WHERE 1 =1 

GROUP BY stu.SCHOOL_NO, stu.CLASS, tea.Name

ORDER BY CLASS

 

Colored by Color Scripter

cs

 


(각 선생이 맡은 반의 학생 수) - 조회결과


 

최종적으로, 위처럼 범범학교에 각 선생님들이 ‘a’, ’b’, ’c’, ’d’ 라는 분들이 계시고 이분들이 맡은 반의 학생 수는 각각 4, 2, 1, 1명 이라는 데이터가 조회되었어요!

 

참고로 JOIN조건에서 선생님과 학생이 같은 학교이면서, 같은 반인 경우라는 조건이 들어 있어서 조조학교에 있는 선생님들 현재 학생 테이블에 조조학교학생들이 없기에 데이터 조회조건에서 필터가 된 것 알고 계시면 됩니다!

 

이로써,  COUNT 함수를 사용하여 학생 수를 구하는 방법에 대해서 알아 보았습니다!

 

감사합니다!



 

 

728x90

이 글을 공유하기

댓글

Designed by JB FACTORY