발자취

#02 RDBMS 연산 본문

3-1/데이터베이스

#02 RDBMS 연산

해린 2023. 3. 19. 05:26

1. 연산의 종류
- selection
제일 많음. 50% 이상. R(검색)을 담당하는 연산. 중요!
조건에 맞는 레코드를 선택(필터링)
 
- projection
특정한 컬럼만 출력(내가 원하는 컬럼만 볼 수 있게 해줌.
 
- union(합집합)
- difference(차집합)
- intersection(교집합)
 
 
2. 키
테이블의 레코드를 검색할 때 레코드를 구별(지정)할 수 있도록 하는 기준
유일성을 만족해야 함.
하나의 컬럼이나 여러 개의 컬럼(복합키)을 묶어서도 가능
하나의 테이블에 여러 개의 key가 될 수 있는 컬럼(후보키)이 있을 수 있음.
 
- 슈퍼키
후보키 전단계
 
- 후보키
기본키가 될 수 있는 가능성이 있는 키
 
- 기본키
후보키 중 선택된 키
 
- 대체키
후보키중 기본키 제외한 나머지
 
- 외래키
다른 테이블에서 기본키로 사용되는 컬럼이 현재 테이블에서 컬럼으로 사용되고 있을 때. 조인을 위한 의도적인 중복
 
 
3. 외래키
- 외래키 == 기본키: 식별관계
- 외래키 == 일반 컬럼: 비식별관계
 
두 테이블 간의 공통 컬럼으로, 테이블 조인 시 기준이 되는 컬럼임.
 
- 참조무결성 제약조건
삽입은 기본키가 있는 곳 먼저! 삭제는 외래키가 있는 곳 먼저!
 
 
4. 인덱스와 키의 관계
MySQL에서는 기본키, 외래키 / 오라클에서는 기본키, UK가 있으면 인덱스가 자동으로 달림.
명시적으로 인덱스를 달아야 하는 경우는 CREATE INDEX문 사용
 
- 단일 인덱스: 단일 컬럼으로 구성된 인덱스
- 복합 인덱스: 여러 컬럼으로 구성된 인덱스