12) 학과가 '컴퓨터'인 학생들이 수강신청한 과목의 과목명을 출력

    SELECT distinct cname

    FROM enrol e JOIN student s ON e.sno=s.sno JOIN course c ON c.cno = e.cno

    WHERE sdept='컴퓨터'


    13) 학과가 '컴퓨터'이고 과목명이 '데이터베이스'인 과목을 수강신청한 학생의 학번, 이름, 학점을 학번순으로 출력

    SELECT s.sno,sname,grade

    FROM enrol e JOIN student s ON e.sno=s.sno JOIN course c ON c.cno = e.cno

    WHERE sdept ='컴퓨터' and cname='데이터베이스'

    ORDER BY s.sno


    * 집계함수(Aggregate Function)

    Count -> *,distinct 사용가능, 값의 개수

    Min -> 최소값

    Max -> 최대값

    Sum -> 합계

    Avg -> 평균


    만약 SELECT Count(*) FROM student; 를 해주었을때 나오는 개수는Primary Key의 개수와 동일하다.

    또한 Column 안에 NULL 값을 가진 데이터가 존재한다면 그 데이터는 개수로 치지 않는다.


    15) 수강신청한 학생의 수는 몇명?

    SELECT count(distinct sno)

    FROM enrol


    16) 학번이 '300'인 학생이 등록한 과목의 개수

    SELECT count(cno)

    FROM enrol

    WHERE sno='300'


    17) 과목명 'C413'에 대한 중간성적의 평균

    SELECT avg(midterm)

    FROM enrol

    WHERE cno='C413'

    ' > 데이터베이스' 카테고리의 다른 글

    3. 데이터 베이스  (0) 2017.05.21
    2. 데이터베이스  (0) 2017.05.14
    5. 데이터베이스  (0) 2017.04.19
    4. 데이터베이스  (0) 2017.04.09
    3. 데이터베이스  (0) 2017.04.02
    Posted by Config