릴레이션의 연산

2021. 6. 14. 12:22프로그래밍/DataBase

728x90

※ 관계형 데이터 베이스 실전 입문  (오쿠노 미키야 (지은이),성창규 (옮긴이), 위키북스) 을 참조해 공부한 내용입니다. ※


데이터는 연산 / 세트로 사용될 때 의미가 있다.

데이터 = 릴레이션

연산 = 쿼리

라고 할 수 있음

 

릴레이션은 튜플의 집합이기 때문에 연산 또한 집합론 바탕이지만 튜플들이 같은 구조/이름/데이터형을 가지므로 관계형 모델 특유의 연산이 가능하다.

 

1. 제한(Restrict) : 특정 조건에 맞는 튜플을 포함하는 릴레이션을 반환한다. (릴레이션의 부분집합)

2. 프로젝션(Projection) : 특정 속성만 포함하는 릴레이션을 반환한다. 주의할 것은 속성이 적어지면 중복이 발생할 가능성이 높아진다는 것이다.

프로젝션

3. 확장 (Extend) : 속성을 늘리는 동작이다. ex) 인구, 면적 -> 인구밀도 속성 추가

4. 속성명 변경(Rename) : 단순 이름 변경이지만 보통 확장한 속성에 대해서 주로 사용한다.

5. 합집합 (Union) : 집합의 합집합. 중복은 제거

6. 교집합 (Intersection) = 모든 속성이 공통인 join

7. 차집합(Difference)

8. 곱집합(Product) : 두 릴레이션 튜플 각각 조합한 릴레이션 반환 -> 두 릴레이션 제목의 속성 전부 포함 = 공통속성 전혀 없는 join

9. 결합 (Join) : 공통 속성을 가진 두 릴레이션에서 공통된 속성값이 같은 튜플끼리 조합한 릴레이션을 반환

위의 그림은 SQL에서의 INNER JOIN과 같다. 원래 관계형 모델에는 INNER JOIN 뿐이다. 왜냐하면 OUTER JOIN은 NULL포함 가능성이 있기 때문이다.

728x90

'프로그래밍 > DataBase' 카테고리의 다른 글

SQL 과 관계형 모델  (0) 2021.06.14
NULL값의 존재 / 관계형 모델의 성질  (0) 2021.06.14
관계형 모델  (0) 2021.06.14