사용자는 SQL을 이용해
- 기존의 릴레이션들로부터 새로운 릴레이션을 생성
- 릴레이션이나 관계 대수식에 연산자들을 적용하여 보다 복잡한 관계 대수식을 점차적으로 만들 수 있음
- 기본적인 연산자들의 집합
< 필수적인 연산자 >
- 실렉션 σ
- 프로젝션 π
- 합집합 ∪
- 차집합 -
- 카티션 곱 x
임의의 질의어가 필수 연산자들 만큼의 표현력을 가지면 관계적으로 완전하다고 표현
실렉션 조건(selection condition)을 만족하는 투플들의 부분 집합
애트리뷰트들의 부분 집합 = 열!
두 릴레이션 R1(A1, A2, ..., An)과 R2(B1, B2, ..., Bm)이 합집합 호환일 필요 충분 조건은 n=m이고, 모든 1<=i<=n에 대해 domain(Ai)=domain(Bi)
R 또는 S에 있거나 R과 S 모두에 속한 투플들로 이루어진 릴레이션
R과 S 모두에 속한 투플들로 이루어진 릴레이션
R-S = R에는 속하지만 S에는 속하지 않은 투플들로 이루어진 릴레이션
R과 S의 투플들의 모든 가능한 조합으로 이루어진 릴레이션
릴레이션 S의 모든(ALL) 투플 값과 쌍을 이루는 릴레이션 R의 A1, A2, ..., An 값
- 세타 조인
- 동등 조인
- 자연 조인
- 외부 조인
- 세미 조인
조인 조건을 만족하는 튜플들로 이루어진 릴레이션
= R,S의 카티션 곱에 조인 조건을 적용
세타 조인 중에서 비교 연산자가 = 인 조인
두 릴레이션의 공통된 애트리뷰트에 대해 동등 조인을 수행하고, 동등 조인의 결과 릴레이션에 있는 두 개의 조인 애트리뷰트 중 하나를 제외한 조인
상대 릴레이션에서 대응되는 투플을 갖지 못하는 투플이나 조인 애트리뷰트에 널값이 들어 있는 투플들을 다루기 위해서 조인 연산을 확장
- 왼쪽 외부 조인
- 오른쪽 외부 조인
- 완전 외부 조인
S에 관련된 투플이 없으면 결과 릴레이션에 널값으로 채운다
R에 관련된 투플이 없으면 결과 릴레이션에 널값으로 채운다
R과 S의 모든 투플들을 결과에 포함시키고, 관련된 투플이 없으면 널값으로 채운다.