관계형 데이터베이스의 데이터 검색과 조작을 위한 두 가지 방법은 관계 대수와 관계 해석입니다. 이 두 개념은 데이터베이스 설계와 질의 처리에서 중요한 역할을 합니다.
셀렉트(Select)
σ(국어 점수 = 100)(학생)
→ 국어 점수가 100점인 학생의 데이터를 반환.프로젝트(Project)
π(학번, 이름)(학생)
→ 학생 테이블에서 학번과 이름만 반환.조인(Join)
학생 ⋈ 학과
→ 학생 테이블과 학과 테이블을 학번을 기준으로 결합.디비전(Division)
학생 ÷ 컴퓨터공학
→ 컴퓨터공학 학과를 다니는 학생 반환.합집합(Union)
교집합(Intersection)
차집합(Difference)
교차곱(Cartesian Product)
데이터 검색 조건을 튜플 변수로 정의.
표현:
{ t | P(t) }
t
: 튜플 변수.P(t)
: 조건을 기술하는 논리식.예시:
{ t | t ∈ 학생 ∧ t.국어점수 = 100 }
→ 학생 테이블에서 국어 점수가 100점인 튜플 반환.
데이터 검색 조건을 도메인 변수로 정의.
표현:
{ (d1, d2, ...) | P(d1, d2, ...) }
d1, d2, ...
: 도메인 변수.P
: 조건.예시:
{ (학번, 이름) | ∃ t (t ∈ 학생 ∧ t.학번 = 학번 ∧ t.국어점수 = 100) }
→ 학생 테이블에서 국어 점수가 100점인 학생의 학번과 이름 반환.
구분 | 관계 대수 | 관계 해석 |
---|---|---|
언어 유형 | 절차적 언어 | 비절차적 언어 |
기능 | 데이터를 어떻게 검색할지 기술 | 데이터를 무엇을 검색할지 정의 |
목적 | 연산 순서 명시 | 원하는 데이터의 조건 명시 |
결과 | 릴레이션(테이블) 형태로 반환 | 릴레이션(테이블) 형태로 반환 |
관계 대수와 해석은 관계형 데이터베이스의 핵심이므로, 개념과 예시를 정확히 이해하고 학습하는 것이 중요합니다.