1. Key
- 데이터베이스에서 검색, 정렬 시 Tuple을 구분할 수 있는 기준이 되는 속성(Attribute)
* Key의 종류
1) 후보키(Candidate Key)
-
Tuple을 유일하게 나타낼 수 있는 속성들의 부분집합이다. 다음의 조건을 만족해야한다.
- 유일성 : 해당 키(Key)로 하나의 Tuple을 유일하게 식별할 수 있어야함
- 최소성 : 꼭 필요한 속성으로만 구성되어야함
2) 기본키(Primary Key)
- 후보키 중 선택한 메인 키, 관계형 데이터베이스에서 관계(테이블)마다 한 설계자에 의해 선택ㆍ정의된 후보 키
* 기본키의 특징
- Null 값을 가질 수 없음
- 동일한 값이 중복될 수 없음
3) 대체키(Alternate Key)
- 후보키 중에서 기본키를 제외한 나머지 키를 말한다. 보조키라고도 말한다.
4) 슈퍼키(Super Key)
- 후보키의 특성 중 유일성은 만족하지만, 최소성은 만족하지 못하는 키
2. Join
-
2개 이상의 테이블이나 데이터베이스를 연결하여 데이터를 검색하는 방법
-
조인 조건은 일반적으로 각 테이블의 PK 및 FK로 구성된다.
* Join의 종류
- Inner Join
- Left Outer Join
- Right Outer Join
- Full Outer Join
- Cross Join
- Self Join
Inner Join
- 가장 일반적인 JOIN이며 교집합
- ON을 이용해서 조인의 조건을 따로 명시해줄 수 있다.
Outer Join
- 어느 한쪽 테이블에는 해당하는 데이터가 존재하는데, 다른 쪽 테이블에는 데이터가 존재하지 않을 경우 그 문제점을 해결하기 위해 사용
- 즉, 동일한 값이 없는 행도 반환할 때 사용하는 구문
Cross Join
- 모든 경우의 수를 표현해주는 방식이다.
- A 테이블의 Tuple이 3개, B 테이블의 Tuple이 5개면 3*5 = 15개의 데이터가 검색된다.