반응형
[출처] 2020 시나공 기본서 정보처리산업기사 실기
관계대수의 개념 및 연산자들의 종류 암기
1. 관계대수
- 관계형 데이터베이스에서 원하는 정보와 그 정보를 어떻게 유도하는가를 기술하는 절차적 언어
- 하나 또는 두 개의 릴레이션을 입력으로 받아들여 새로운 릴레이션을 생성하는 연산들의 집합
기본연산 : SELECT, PROJECT, JOIN, DIVISION 등
집합연산 : UNION, DEFFERENCE, INTERSECTION, CARTESIAN PRODUCT 등
SELECT와 PROJECT로 검색식을 활용할 줄 알아야함
2. 순수 관계 연산자
- SELECT (σ)
- 튜플들 중에서 특정 조건을 만족하는 튜플들의 부분집합을 구하여 새로운 릴레이션을 생성
- 수평 연산(행에 해당하는 튜플 추출)으로도 불림
- 연산기호 : 시그마(σ)
- 표기형식 : σ(조건)(R)
- (조건) 부분은 =, ≠, <, ≤, >, ≥ 등 비교 연산 및 AND(∧), OR(∨), NOT(¬) 등 논리 연산자 허용
- 내 맘대로 외우기 : SQL로 비교하면 WHERE 절 (조건 입력)
- (R) 부분은 릴레이션(Relation)
- 내 맘대로 외우기 : SQL로 비교하면 FROM 절 (테이블명)
- (조건) 부분은 =, ≠, <, ≤, >, ≥ 등 비교 연산 및 AND(∧), OR(∨), NOT(¬) 등 논리 연산자 허용
- PROJECT (π)
- 릴레이션에서 속성 리스트에 제시된 속성 값만을 추출하여 새로운 릴레이션을 생성
- 단. 연산 결과에 중복 발생 시 중복이 제거
- 수직 연산(열에 해당하는 속성 추출)으로도 불림
- 연산기호 : 파이(π)
- 표기형식 : π(속성리스트)(R)
- JOIN (⋈)
- 공통 속성을 중심으로 2개의 릴레이션을 하나로 합쳐서 새로운 릴레이션 생성
- JOIN 연산의 결과로 만들어진 릴레이션의 차수는 조인된 두 릴레이션의 차수를 합한 것
디그리 구하는 문제 - JOIN 연산의 결과는 CARTESIAN PRODUCT 연산을 수행한 후 SELECT 연산을 수행한 것과 같음
별로 안중요 - 연산기호 : ⋈
- 표기형식 : R⋈(JOIN 조건)S
- R, S는 릴레이션
- DIVISION
- 두 릴레이션 R(X)와 S(Y)에 대해 Y⊆X이고 X-Y=Z라고 하면, R(X)와 R(Z, Y)는 동일한 표현
- 이때, 릴레이션 R(Z, Y)에 대한 S(Y)의 DIVISION 연산은 S(Y)의 모든 튜플에 연관되어 있는 R(Z)의 튜플을 선택하는 것
- 표기형식 : R(속성r ÷ 속성s)S
- 속성r은 릴레이션 R의 속성이고, 속성s는 릴레이션 S의 속성이며, 속성r과 속성s는 동일 속성 값을 가지는 속성이여야 함
3. 일반 집합 연산자
집합 연산은 수학적 집합 이론에서 사용하는 연산자로서 릴레이션 연산에도 그대로 적용 가능
합병하려는 두 릴레이션 간에 속성의 수가 같고, 대응되는 속성별 도메인이 같은 합병 조건을 만족해야 함
- 합집합 UNION 연산기호 : ⋃
- 교집합 INTERSECTION 연산기호 : ⋂
- 차집합 DIFFERENCE 연산기호 : −
- 교차곱 CARTESIAN PRODUCT 연산기호 : ⅹ
관계대수와 구분
4. 관계해석
- 관계 데이터 모델의 제안자 코드가 수학의 술어해석에 기반을 두고 관계 데이터베이스를 위해 제안함
- 관계 데이터 연산을 표현하는 방법으로 계산 수식을 사용
- 관계해석은 원하는 정보가 무엇이라는 것만 정의하는 비절차적 특성을 지님
- 질의어로 표현
반응형
'정보처리산업기사_실기_기록용' 카테고리의 다른 글
[데이터베이스] SQL - DML(INSERT) (0) | 2021.10.04 |
---|---|
[데이터베이스] SQL - SELECT (0) | 2021.09.24 |
[데이터베이스] SQL - DDL (0) | 2021.09.24 |
[데이터베이스] 관계형 데이터베이스 (0) | 2021.09.23 |
[데이터베이스] 데이터베이스 기본 (0) | 2021.09.22 |