가자미의 개발이야기
[데이터베이스] 관계대수 본문
1. 관계대수
#관계대수
- 릴레이션에서 원하는 결과를 얻기 위해 수학의 대수와 같은 연산을 잉요하여 질의하는 방법을 기술하는 언어.
- 순수 관계 연산 : 셀렉션, 프로젝션, 조인, 디비전, 개명
- 일반 집합 연산 : 합집합, 차집합, 교집합, 카티전 프로덕트
- 단항 연산자 : 연산자<조건> 릴레이션
- 이항 연산자 : 릴레이션1 연산자<조건> 릴레이션2
2. 셀렉션과 프로젝션
#셀렉션
-σ<조건>(R)
- 릴레이션의 투플을 추출하는 연산
- 만약 조건이 여러개면 ∧(and) ∨(or) ¬(not)를 사용
ex. σ<가격<=8000>(도서)
#프로젝션
-π<조건>(R)
- 릴레이션의 속성을 추출하는 연산
ex. π<이름, 주소, 핸드폰>(고객)
3. 집합 연산
#합병가능
- 각 릴레이션의 속성 수가 같고 순서도 같아야 하며, 각각 동일한 도메인으로 대응되는 조건
- 집합 연산(합집합, 교집합, 차집합)은 합병가능해야 성립
#카티전 프로덕트
-A X B
- 두 릴레이션을 수평적으로 연결시켜 하나로 합칠 때 사용.
- 속성과 도메인이 동일
4. 조인
- 조인에 참여하는 속성이 서로 동일한 도메인으로 구성
- 두 릴레이션의 공통 속성을 기준으로 속성 값이 같은 투플을 수평으로 결합
#세타조인
-R⋈θS
- 속성 값을 비교(=, !=, =<, =>, <,>)하여 조건에 맞는 투플을 반환.
#동등조인
-R⋈S
- 속성 값이 같은 투플을 반환
#세타조인
-R⋈NS
- 속성 이름이 같은 투플만을 대상으로 중복 속성 제거해서 반환
#세미조인
-⋉
- 두 릴레이션을 조인하고 한 릴레이션의 투플만 반환
#외부조인
-⟕, ⟖, ⟗
- 조인에 실패한 값을 NULL 값으로 채워서 반환
5. 디비전
- 특정 값들을 모두 갖고 있는 투플을 반환.
6. 유니온
-유니온 하려는 두 릴레이션의 속성의 개수가 동일해야 함
-들어가는 도메인의 값도 일치해야 한다.
'Computer Science > 데이터베이스' 카테고리의 다른 글
[데이터베이스] MySQL의 my.ini 수정 권한이 없다고 나올 때 해결방법. (0) | 2021.02.23 |
---|---|
[데이터베이스] SQL 내장함수 (0) | 2021.02.23 |
[데이터베이스] sql 기초 총정리! (0) | 2021.02.17 |
[데이터베이스] 관계 데이터 모델 (0) | 2021.02.16 |
[데이터베이스]데이터베이스 시스템의 개념 (0) | 2021.02.09 |