모두CBT

아래의 관계 대수를 SQL로 옳게 나타난 것은?π 이름, 학년(σ 학과… | [멀티미디어콘텐츠제작전문가 필기] 17년 3회차 기출문제 상세 페이지

1[멀티미디어콘텐츠제작전문가 필기] 17년 3회차

아래의 관계 대수를 SQL로 옳게 나타난 것은?

π 이름, 학년(σ 학과 = '컴퓨터' (학생))

1
SELECT 이름, 학과 FROM 학년 WHERE 학과 = '컴퓨터';
2
SELECT 이름, 학년 FROM 학생 WHERE 학과 = '컴퓨터';
3
SELECT 이름, 학년 FROM 학과 WHERE 학생 = '컴퓨터';
4
SELECT 이름, 컴퓨터 FROM 학생 WHERE 이름 = '학년';
해설

주어진 관계 대수식은 SELECT 이름, 학년 FROM 학생 WHERE 학과 = '컴퓨터'; 와 같다.

안쪽의 σ(셀렉트)는 조건에 맞는 행(튜플)을 걸러내는 연산으로, 아래에 붙은 조건 학과 = '컴퓨터'가 SQL의 WHERE 절이 되고 괄호 안의 피연산 릴레이션 '학생'이 FROM 절이 된다.

바깥쪽의 π(프로젝트)는 필요한 열(속성)만 뽑아내는 연산이므로, 붙어 있는 속성 목록 '이름, 학년'이 그대로 SELECT 절이 된다. 즉 학생 테이블에서 학과가 컴퓨터인 행을 고른 뒤 이름과 학년 두 열만 출력하라는 뜻이다.

  • FROM에 '학년'이나 '학과'를 쓴 문장은 조회 대상 테이블을 잘못 잡은 것으로, 릴레이션은 괄호 안의 학생이다.
  • 조건절에 학생 = '컴퓨터' 또는 이름 = '학년'처럼 쓴 문장은 σ의 조건 속성과 π의 출력 속성을 뒤바꾼 것이다.

내용에 오류가 있거나 최신 법령·기준과 다른 부분이 보이면 알려주세요. 확인 후 반영하겠습니다.