백업/정보컴퓨터

[정보][DB][SQL] 2019-A-05 SQL

Unknown9 2021. 2. 5. 15:40
반응형

5. (가)는 학사관리 데이터베이스의 릴레이션들이고, (나)는 (가)로 부터 과목번호 534305를 수강신청하지 않은 학생의 학생번호와 학생이름을 검색하는 SQL문이다. <조건>을 고려하여 ㉠에 해당 하는 내용과, SQL문의 실행 결과에 나오는 튜플의 개수를 순서 대로 쓰시오. [2점]

 

<조건>을 고려하여 ㉠에 해당 하는 내용과,

SQL문의 실행 결과에 나오는 튜플의 개수를 순서 대로 쓰시오

 

일단 테이블을 살펴보면, 수강등록에서 Student_id는 외래키이다.

조건에 대한 부분은 설명이라 특이 사항이 없다.

에 해다아하는 내용은 "(나)는 (가)로 부터 과목번호 534305를 수강신청하지 않은 학생의 학생번호와 학생이름을 검색하는 SQL문"을 판단해서 풀어보자

일단 SQL문을 긁어서 붙여 보자.

 

SELECT Student_id, Student_name

FROM Student

WHERE Student_id ( ㉠ )

    (SELECT Student_id  --> Course_id 가 534305인 학생을 선택.

    FROM Enroll

    WHERE Course_id = 534305);

 

아닌경우 NOT IN 을 사용한다.

답 :  ㉠  NOT IN

 

Course_id = 534305인 Student_id = 140103, 152126

이므로 그것을 제외한 나머지를 적도록 한다.

Student_id Student_name
110001  김영희 
120302 이수남 
131005 박종화 

튜플의 개수는 3

답: 3

 

문법은 잘 익히고 조건은 꼼꼼히 봐야한다.

 

반응형