1. 관계 모델 연산을 위한 공식적인 토대를 제공 2. 질의를 구현하고 최적화하기 위한 기반을 사용 3. 관계 대수의 몇 가지 개념은 RDBMS를 위한 SQL 표준 질의에 반영됨
SQL 질의를 처리하는 과정
관계 대수 연산자
- 셀력션(selection) 연산자: 특정한 조건을 만족하는 튜플들을 선택함으로써 튜플의 수를 줄임 - 프로젝션(projection) 연산자: 특정 애트리뷰트를 제거함으로써 각 튜플의 크기를 줄임 - 집합(set) 연산자: 튜플의 결합과 비교를 통해 유사한 2개의 튜플 집합을 조작 - 조인(join), 프로덕트(product) 연산자: 애트리뷰트를 더함으로써 각 튜플의 크기를 늘림
셀렉션 연산자 ⭐
- 릴레이션으로부터 특정한 기준을 만족하는 모든 튜플들을 선택 => δ(시그마) ⭐
"시험) 관계 대수식으로 표현하기"
EX) 'Doe'라는 성을 가진 고객 찾기
EX) 직원번호가 '376-77-0099'인 직원에 대해 1998년 3월1일 후의 모든 근무일지 검색
프로덕션 연산자
- 선택된 애트리뷰트만을 가지는 릴레이션을 만듦 - 모든 중복은 제거됨 => π(파이)
EX) 모든 고객의 성과 이름에 대한 리스트 검색
집합 연산자
- 대응되는 각 애트리뷰트들의 숫자와 타입이 서로 동일할 경우 ⭐
EX)
- Rental과 PreviousRental은 같은 형태 - 대응되는 애트리뷰트 타입: VARCHAR2(3) / VARCHAR2(10) / DATE / DATE / NUMBER(5,2) => 두 릴레이션은 서로 다른 이름을 가지고 있지만, 타입이 같으므로 집합 연산 가능 => 애트리뷰트의 이름이 다르면 왼쪽 피연산자에 대응하는 릴레이션 애트리뷰트의 이름을 따름