본문 바로가기

IT개념/정보처리산업기사

[정처 산기] 관계대수, 관계해석

728x90

관계 대수 (Relational Algebra)

  1. 절차적 언어(절차중심)
    - 원하는 정보를 어떻게 유도하는가 연산자와 연산 규칙으로 기술
    2. 분류 : 순수 관계 연산자, 일반 집합 연산자

관계 해석 (Relational Calculus)

  1. 비절차적(결과중심)
    - 원하는 정보가 (무엇) 인지 정의
    2. 분류 : 튜플관계해석, 도메인 관계 해석

기본적으로 관계 해석과 대수는 데이터베이스 능력면에서 동등하다.



## 관계 대수 종류 1. 순수 관계 연산자 : SELECT, PROJECT, JOIN, DIVISION 2. 일반 관계 연산자 : 합집합, 교집합, 차집합, 카티션프로덕트(곱하기)

SELECT (σ)

릴레이션에서 주어진 조건을 토대로 튜플을 검색하며 기호로 시그마(σ) 사용 (행, 수평연산)
σ 조건 (R)

PROJECT (π)

릴레이션에서 주어진 조건을 토대로 속성을 검색함 기호로 파이(π) 사용 (열, 수직연산)
π 조건 (R)

JOIN (⋈)

두 릴레이션의 공통된 속성을 연결함
R⋈ 조건=조건 S
EQULJOIN(공통 속성 중복된 상태로 표현), NATURALJOIN (공통 속성제거)

DIVISION (÷)

나누어지는 릴레이션 A는 릴레이션 B를 모두 포함한 것이 결과가 됨
R:[속성r ÷ 속성s]S

합집합 (U)

릴레이션 A, B의 튜플로 구성된 릴레이션

교집합 (n)

릴레이션 A와 B의 공통된 부분으로 구성된 릴레이션

차집합 (-)

릴레이션 A에만 있고 B에는 없는 튜플로 구성된 릴레이션 (DIFFERENCE)

(관계 대수 연산자 중 합, 교, 차집합 연산은 이항연산으로 차수와 도메인이 같아야 연산 수행 가능)

카티션 프로덕트(cartesian product) (X)

A에 속한 각 튜플 a에 대해 B에 대한 튜플b를 모두 접속시킨 릴레이션이다.
(A(a1,a2) / B(b1, b2)를 A X B 하면 (a1/b1, a1/b2, a2/b1, a2/b2) 이렇게됨)