기출문제/정보처리기사

2020년 3회 정보처리기사 기출문제 57번

엉클지니 2025. 4. 9. 16:57

57. 관계대수의 순수관계 연산자가 아닌 것은?

    Select         Cartesian Product

    Division     Project

 

 

 

이 문제는 관계대수에서 "순수관계 연산자"가 아닌 것을 찾는 문제입니다. 관계대수는 데이터베이스에서 데이터를 검색하고 처리하기 위한 이론적인 언어로, 여러 가지 연산자를 사용합니다. 여기서 "순수관계 연산자"는 데이터를 처리하는 기본적인 연산자들을 말하는데, 이 중에서 하나가 아닌 연산자를 찾아야 합니다.


문제 분석 🧐

주어진 보기:

  • ① Select
  • ❷ Cartesian Product
  • ③ Division
  • ④ Project

관계대수의 순수관계 연산자

먼저 관계대수에서 순수관계 연산자에는 다음과 같은 것들이 있습니다:

  1. Select (σ)
    • 특정 조건을 만족하는 튜플을 선택하는 연산입니다.
    • 예시: 학생 테이블에서 나이가 20 이상인 학생을 찾는 연산.
  2. Project (π)
    • 특정 속성만을 선택하는 연산입니다.
    • 예시: 학생 테이블에서 이름과 나이만을 선택하는 연산.
  3. Union (∪)
    • 두 관계를 합치는 연산입니다.
    • 예시: 두 개의 학생 테이블을 합쳐서 전체 학생 리스트를 만드는 연산.
  4. Set Difference (−)
    • 두 관계에서 하나는 포함되고 다른 하나는 제외하는 연산입니다.
    • 예시: 학생 A 목록에서 학생 B 목록을 제외한 나머지 학생 목록.
  5. Intersection (∩)
    • 두 관계에서 공통되는 튜플을 선택하는 연산입니다.
    • 예시: 두 개의 학생 목록에서 공통된 학생을 찾는 연산.

순수관계 연산자가 아닌 것은?

Cartesian Product (×):

  • 두 관계의 모든 가능한 튜플을 결합하는 연산입니다.
  • 예시: 학생 테이블과 수업 테이블의 Cartesian Product를 수행하면, 모든 학생과 모든 수업의 조합을 얻을 수 있습니다.
  • 이 연산은 순수관계 연산자에 포함되지 않습니다. 왜냐하면 Cartesian Product는 두 관계의 조합을 만들어내는 연산으로, 결과적으로 새로운 관계를 생성하지만 데이터를 필터링하거나 속성만을 선택하는 연산이 아니기 때문입니다.

결론 🏁

따라서 **"순수관계 연산자가 아닌 것"**은 ❷ Cartesian Product입니다.


해설 📝

**Select (σ)**와 **Project (π)**는 데이터를 선택하거나 필터링하는 순수관계 연산자입니다. **Cartesian Product (×)**는 두 테이블을 조합하는 연산으로, 데이터를 단순히 선택하거나 변경하지 않고 새로운 관계를 생성합니다. **Division (÷)**은 특정 조건에 맞는 데이터를 분리하는 연산이지만, 순수관계 연산자에 포함되지는 않습니다.

예시

Select 예시:

학생 테이블:

학번 이름 나이

1 김철수 20
2 이영희 22
3 박민수 19

Select 연산을 사용하여 나이가 20 이상인 학생을 선택하면:

학번 이름 나이

1 김철수 20
2 이영희 22

Cartesian Product 예시:

학생 테이블과 수업 테이블: 학생 테이블:

학번 이름

1 김철수
2 이영희

수업 테이블:

수업명 교수명

수학 김 교수
물리 이 교수

Cartesian Product 결과:

학번 이름 수업명 교수명

1 김철수 수학 김 교수
1 김철수 물리 이 교수
2 이영희 수학 김 교수
2 이영희 물리 이 교수

요약표 📊

연산자 설명 순수관계 연산자 여부

Select (σ) 조건에 맞는 튜플 선택
Cartesian Product (×) 두 관계의 모든 가능한 튜플 조합
Division (÷) 조건에 맞는 데이터를 분리
Project (π) 특정 속성만 선택

결론: ❷ Cartesian Product는 순수관계 연산자가 아니므로 정답입니다! 😄