본문 바로가기
정보처리기사/[이전] 필기&실기 개념

정보처리기사 정처기 | 데이터베이스 관계대수 및 관계해석 | 필기&실기 개념

by YUNI Heo 2023. 7. 13.
반응형

 

✅ 관계대수

관계대수는 관계형 데이터베이스에서 원하는 정보를 유도하기 위한 절차적인 언어입니다. 이 언어는 데이터베이스에서 원하는 정보를 검색하고 조작하는 데 사용됩니다. 관계대수는 다양한 연산자와 규칙으로 구성되어 있으며, 주로 순수관계 연산자와 일반집합 연산자로 구분됩니다.

 

💡 순수관계 연산자 [셀프조디]

순수관계 연산자는 데이터베이스에서 튜플들을 선택하거나 추출하고, 두 개의 릴레이션을 조인하거나 나누는 등의 연산을 수행합니다. 


선택(Select) 연산자(σ)

조건을 만족하는 튜플들의 부분 집합을 선택합니다. 수평 연산을 수행합니다.


추출(Project) 연산자(π)

속성들의 부분 집합을 추출합니다. 중복된 값은 제거됩니다. 수직 연산을 수행합니다.


조인(Join) 연산자(▷◁):

두 개의 릴레이션이 공통으로 가지고 있는 속성을 이용하여 두 개의 릴레이션을 하나로 합칩니다.


나누기(Division) 연산자(÷)

한 릴레이션에서 다른 릴레이션의 속성 도메인 값과 일치하는 튜플들을 찾아냅니다.

 

💡 일반집합 연산자 [합교차카]

일반집합 연산자는 릴레이션 간의 합집합, 교집합, 차집합 등을 수행합니다. 


Union(합집합) 연산자(∪)

두 개의 릴레이션의 합집합을 추출하고 중복된 값은 제거됩니다.


Intersection(교집합) 연산자(∩)

두 개의 릴레이션의 중복되는 값들만 추출합니다.

 


Difference(차집합) 연산자(—)

한 릴레이션에서 다른 릴레이션에 중복되지 않는 값들만 추출합니다.


Cartesian Product(교차곱) 연산자(Х)

두 릴레이션의 가능한 모든 튜플들의 집합을 구합니다.

 

관계해석(Relational Calculus)

관계해석은 관계 데이터 모델의 제안자인 E.F. Codd에 의해 제안된 절차적인 언어입니다. 관계해석은 술어 해석(Predicate Calculus)을 기반으로 하며, 원하는 정보가 "무엇(What)"인지를 정의하는 비절차적인 특성을 가지고 있습니다. 관계해석은 튜플 관계해석과 도메인 관계해석으로 나뉘며, 관계대수와 유사한 기능과 능력을 가지고 있습니다.

 

💡 연산자

OR 연산 -  V
원자식 간 “또는”이라는 관계로 연결



AND 연산 - ∧
원자식 간 “그리고”라는 관계로 연결



NOT 연산 - ㄱ
원자식에 대해 부정

 

💡 정량자

전칭 정량자(Universal Quantifier) - ∀
모든 가능한 튜플 “For All”
# All의 ‘A’를 뒤집은 형태 ★



존재 정량자(Existential Quantifier) - ∃
어떤 튜플 하나라도 존재 “There Exists”
# Exists의 ‘E’를 뒤집은 형태 ★

반응형