두 테이블로부터 연관된 레코드를 결합하는 연산자
두 테이블로부터 특정 조건을 만족하는 레코드들을
하나의 레코드로 결합하는 연산 (같은 조건을 가진 레코드들끼리 매칭시켜서)
테이블 하나로 원하는 결과를 얻을 수 없을 때
관계가 있는 여러 테이블을 한꺼번에 사용해야 하는 경우 조인 연산 수행
두 테이블의 공통 속성(조인하는 속성)을 이용하는 것,
공통 속성이 같은 레코드를 연결하여 하나로 만드는 것
(공통 속성의 이름이 같을 필요는 없음)
카티션 프로덕트는 모든 가능한 조합에 의해 레코드들을 생성하지만,
조인은 특정 조건을 만족하는 레코드만을 선택
조인 = 카티션 프로덕트 후 셀렉트 연산을 수행하는 것과 같음
<테이블이름1>⋈<테이블이름2> = σ <조건식> <테이블이름1>x<테이블이름2>)
<테이블이름1>⋈<조건식><테이블이름2>
<조건식> 부분에 >, <, ≥, ≥, =, ≠ 중 하나를 사용
이 때, <조건식> 부분이 '=' 인 세타 조인을 동등 조인이라고 함
(동등 조인은 세타 조인의 종류 중 하나임)
서로 다른 테이블에서 같은 이름을 갖는 두 필드에 대한 동등 조인
하나의 필드를 제거하여 단순히 표현한 연산
<테이블이름1>⋈<테이블이름2>
공통되는 필드가 없으면 카티션 프로덕트와 같음
조건 조인에 만족되지 않는 레코드들까지 검색 결과에 포함시키기 위한 방법
서로 매치되지 않는 필드들에 대해서는 NULL을 입력함




junior ← σ year = 3(student)
테이블에 이름을 부여하거나 변경하는 연산
ρ<테이블명>(<테이블명2>)
<테이블명2>의 이름을 <테이블명1>로 변경
ρ<테이블명>(<필드리스트>) (<테이블명2>)
<테이블명2>의 이름을 <테이블명1>로 변경하는 동시에
<테이블명2>에 정의된 필드명들을 모두 <필드리스트로 변경>
주의