[Database] Key와 Join

foresec·2023년 6월 20일
0

Computer Science

목록 보기
2/28

Key

검색, 정렬시 Tuple을 구분할 수 있느 기준이 되는 Attribute

1. Candidate Key(후보키)

Tuple을 유일하게 식별할기 위해 사용하는 속성들의 부분집합(기본키로 사용할 수 있는 속성들)
2가지 조건을 만족해야한다

  • 유일성 : Key로 하나의 Tuple을 유일하게 식별할 수 있음
  • 최소성 : 꼭 필요한 속성으로만 구성

2. Primary Key(기본키)

후보키 중 선택한 Main Key
특징

  • Null값 가질 수 X
  • 동일한 값 중복 X

3. Alternate Key(대체키)

후보키 중 기본키를 제외한 나머지 키 = 보조키

4. Super Key(슈퍼키)

유일성은 만족하지만, 최소성은 만족하지 못하는 키

5. Foreign Key(외래키)

다른 Relation의 기본키를 그대로 참조하는 속성의 집합


Join

두 개 이상의 테이블이나 데이터를 연결하여 데이터를 검색하는 방법
테이블 연결시, 적어도 하나의 칼럼을 서로 공유하고 있어야 하므로 이를 이용하여 데이터 검색에 활용

1. INNER JOIN

SELECT
A.NAME, B.AGE
FROM EX_TABLE A
INNER JOIN JOIN_TABLE B ON A.NO_EMP = B.NO_EMP

교집합

2. LEFT OUTER JOIN

SELECT
A.NAME, B.AGE
FROM EX_TABLE A
LEFT OUTER JOIN JOIN_TABLE B ON A.NO_EMP = B.NO_EMP

기준 테이블값 + Join 테이블 중복된 값

3. RIGHT OUTER JOIN

SELECT
A.NAME, B.AGE
FROM EX_TABLE A
RIGHT OUTER JOIN JOIN_TABLE B ON A.NO_EMP = B.NO_EMP

오른쪽 테이블 기준 JOIN

4. FULL OUTER JOIN

SELECT
A.NAME, B.AGE
FROM EX_TABLE A
FULL OUTER JOIN JOIN_TABLE B ON A.NO_EMP = B.NO_EMP

합집합, A 및 B 테이블의 모든 데이터 검색

5. CROSS JOIN

SELECT
A.NAME, B.AGE
FROM EX_TABLE A
CROSS JOIN JOIN_TABLE B

모든 경우의 수를 전부 표현
ex) A 3개, B 4개라면 총 3 * 4 = 12개의 데이터 검색

6. SELF JOIN

SELECT
A.NAME, B.AGE
FROM EX_TABLE A, EX_TABLE B

자기자신과 자기자신 조인
하나의 테이블을 여러번 복사해서 조인

profile
왼쪽 태그보다 시리즈 위주로 구분

0개의 댓글