기출문제/정보처리기사

2022년 1회 정보처리기사 기출문제 49번

엉클지니 2025. 3. 6. 01:27

49. 관계 대수식을 SQL 질의로 옳게 표현한 것은?

 SELECT 학생 FROM 이름 WHERE 학과='교육';

  SELECT 이름 FROM 학생 WHERE 학과='교육';

 SELECT 교육 FROM 학과 WHERE 이름='학생';

 SELECT 학과 FROM 학생 WHERE 이름='교육';

 




🔎 관계 대수식 분석

π이름(σ학과=′교육′(학생))\pi_{이름}\left(\sigma_{학과 = '교육'}(학생)\right)

해석

  • σ 학과 = '교육' (학생)
    → 학생 테이블에서 학과가 '교육'인 튜플(행)만 선택 (Selection = 선택 연산)
  • π 이름
    → 그 중에서 이름 속성만 선택 (Projection = 속성 선택 연산)

✅ SQL로 변환

위 관계 대수식을 SQL로 옮기면:

SELECT 이름
FROM 학생
WHERE 학과 = '교육';

📌 보기 분석

① SELECT 학생 FROM 이름 WHERE 학과='교육';
→ 테이블과 컬럼이 뒤바뀌어 있어서 틀림.

❷ SELECT 이름 FROM 학생 WHERE 학과='교육';
→ 정확하게 관계 대수식을 표현한 SQL! 정답✅

③ SELECT 교육 FROM 학과 WHERE 이름='학생';
→ 의미 없는 SQL문 (학생, 교육, 학과 관계가 엉뚱함).

④ SELECT 학과 FROM 학생 WHERE 이름='교육';
→ 조건이 잘못 설정되어 있음.


💯 정답

SELECT 이름 FROM 학생 WHERE 학과='교육';


💡 관계 대수 → SQL 변환 요령 정리

관계 대수 SQL

σ (Selection) WHERE 조건
π (Projection) SELECT 컬럼
⋈ (Join) JOIN ON 조건
∪ (Union) UNION
- (Difference) EXCEPT
∩ (Intersection) INTERSECT

혹시 관계 대수 더 연습하고 싶으세요? 추가 문제도 만들어드릴 수 있어요! 😃
다음 문제도 바로 설명해드릴까요?

반응형