데이터베이스

관계대수 연산_실렉션, 프로젝션, 합집합, 카디션곱, 교집합, 조인, 디비전

스윙스윙 2021. 8. 13. 22:17

▣ 관계대수_실렉션, 프로젝션, 합집합, 카디션곱, 교집합, 조인, 디비전

 


■ 디비전 연산

 

R(Z, Y) ÷ S(Y) = R[Z] - ((R[Z] × S) - R)[Z] (단, [ ] : 프로젝션 연산)

 

S(Y)의 모든 튜플에 연관되어 있는 R[Z]의 튜플을 선택

복합연산인 디비젼 연산(division)을 기본 연산 대체할 때

카티션 곱, 차집합, 프로젝션 사용

 


2013년 59번

정답 : 2번

 

R(Z, Y) ÷ S(Y) = R[Z] - (R[Z] × S) - R)[Z] (단, [ ] : 프로젝션 연산)

S(Y)의 모든 튜플에 연관되어 있는 R[Z]의 튜플을 선택

복합연산인 디비젼 연산(division)을 기본 연산 대체할 때

카티션 곱, 차집합, 프로젝션 사용


2014년 56번

정답 : 1번

"잔액이 $100이상인 계좌의 전화번호를 알아내라"를 SQL문으로 만들고 관계대수식으로 매핑하면 아래와 같음

관계대수에서 조건절과 조인절의 순서가 변경되어도 상관없음

SELECT절 처음, FROM절 테이블은 마지막에 위치(카티션 프로덱트) 

* ∨, ∧ 기호 설명

 

 


2014년 72번

정답 : 1번, 2번

* 조교 자인한 복합연산

  조인, 교집합, 디비전

 


2015년 70번

▶ 관계대수의 기본연산

 

▶ 관계대수의 복합연산

* 조교자인한 복합연산

  조인, 교집합, 디비전


πSex,GPA(STUDENT)는 STUDENT로부터 Sex와 GPA를 프로젝션(π)하므로, SQL로 표현하면
‘SELECT Sex, GPA FROM STUDENT’ 질의문에 중복 제거를 위한 DISTINCT를 추가하여
‘SELECT DISTINCT Sex, GPA FROM STUDENT’로 표현함


2017년 55번

서브쿼리(SELECT * FROM R2 WHERE (r1name = r2name))에서 R1과 R2의 자연조인을

암시적으로 수행함.

서브쿼리 질의 결과(EXISTS(조건표현식) '참'인 데이터 추출)에서 R1릴레이션에 r1name값을 추출

(SELECT r1name FROM R1 WHERE EXISTS) 


2018년 59번

정답 : 4번

^ 기호는 and 표시임, v 기호는 or표시임

1)번은 속성 : 3, 투플 : 2 -> R(A, B, C) 테이블에서 B='b1' and C='c1' 인 결과를 추출

2)번은 속성 : 2, 투플 : 2 -> R(A, B, C) 테이블에서 B='b1' or C='c1' 인 결과에서 B, C 컬럼만 추출해서 중복제거

3)번은 속성 : 2, 투플 : 2 -> 2)번 결과와 S(C, D, E)를 조인 후 B, C 컬럼만 추출해서 중복제거

4)번은 속성 : 2, 투플 : 2 -> R(A, B, C)와 S(C, D, E)를 조인 후 B, C 컬럼만 추출해서 중복제거

 


2019년 58번

정답 : 2번, 3번

1) John, Tom, Mary - 프로젝션 릴레이션 R.A : 중복제거

2) Tom - 디비젼 연산, 프로젝션 릴레이션 S.B

    Tom 1,5,8 Mary 5, 8 John 5

3) Tom - 실렉션  'beta' -> 5추출 후 '5보다 작은 것 조인' -> 프로젝션 릴레이션 R.A

4) Tom, Mary - 실렉션 'zetta' -> 8추출 후 '8과 같은것 조인' -> 프로젝션 릴레이션 R.A


2019년 65번

정답 : 정답 없음

R1(A,B), R2(C,D) 에서 외래키 R1.B가 R2.C를 참조하는 구조

- ∏c (R2) : C도메인 전체집합(C는 기본키이므로 Null을 포함하지 않음)

- ∏b (R1) : C의 부분집합(B가 외래키이므로 Null을 포함할 수 있음)

ex) ∏c (R2) = {1,2,3,4,5}, ∏b (R1) = {null, 1, 3, 4} 라고 가정한다면,

보기 1), 2), 3) 모두 항상 성립하지 않음

∏b (R1)에 null이 포함되지 않는다면 보기 4)도 항상 성립하지 않음


2020년 51번

정답 : 1번

합병 가능(union-compatible)이란 두 릴레이션 R과 S가 있을 때 이 두 릴레이션의 차수

즉, 애트리뷰트 수가 같고 대응 애트리뷰트 별로 도메인이 같다는 것을 의미함

 

보기 3번 세타 조인은 =, >, >= 등 비교 연산자를 일반화한 세타로 표현될 수 있는 조인을

말하며, 세타 조인 결과 릴레이션의 차수는 두 릴레이션의 차수를 합한 것과 같음

 

보기 4번 디비전(division)연산의 정의에 따라 올바른 설명임


2020년 56번

정답 : 2번

S(Y)의 모든 튜플에 연관되어 있는 R[Z]의 튜플을 선택

 


2020년 61번

정답 : 3번

1) 카티션 프로덕트 결과 카디널리티는 8*4 = 32

    차수 : 6, 카디널리티 : 32

2) 자연조인은 중복된 속성인 부서번호를 한번만 표현함

    차수 : 5, 카디널리티 : 6

3) 자연조인의 변형으로 좌측 외부조인으로 연결되지 않은 사원쪽 투플 2개 추가

    차수 : 5, 카디널리티 : 8

4) 조인에 관련된 모든 속성을 포함(중복허용)

    차수 : 6, 카디널리티 : 6

 


 

2021년 59번

정답 : 2번

학생(학번, 이름, 학년 학과)

과목(과목번호, 과목이름, 학점, 학과)

등록(학번, 과목번호, 성적)

 

"모든 과목에 수강하고 있는 학생의 학번과 이름을 검색하라"

 

1. 등록 ÷ (∏과목번호(과목)) -> 모든 과목에 수강 한 학생의 학번 검색

2. ∏학번,이름(학생 조인연산 학번=학번 ( 등록 ÷ (∏과목번호(과목)) ) 

-> 1번 연산 후 나온 학번과 학생 릴레이션과 조인 후 학번, 이름 추출

 

사용된 연산은 디비젼, 프로젝션, 조인이며, 차집합은 사용되지 않음