관계대수
: 어떤 데이터를 어떻게 찾은지에 대한 처리 절차를 명시하는 절차적 언어
그렇다면 관계대수식은?
→ 대상이 되는 릴레이션과 연산자로 구성되어 릴레이션을 반환함
관계대수 연산자
1. 기본 연산자 (순수 관계 연산자)
기본적으로 데이터를 검색하고 조작하는 데 필요한 핵심 연산자들입니다.
① SELECT (σ, 시그마) – 튜플(행) 선택
- 특정 조건을 만족하는 튜플(레코드)을 선택하는 연산
- 연산 기호: σ(조건)(릴레이션)
- 예시:
- σ 나이 >= 30 (직원) → 직원 테이블에서 나이가 30 이상인 직원만 선택
② PROJECT (π, 파이) – 속성(열) 선택
- 특정 속성(열)만 선택하여 새로운 릴레이션을 반환하는 연산
- 연산 기호: π(속성 리스트)(릴레이션)
- 예시:
- π 이름, 나이 (직원) → 직원 테이블에서 이름과 나이 속성만 선택
③ JOIN (⋈, 조인) – 두 개의 릴레이션 결합
- 두 개의 테이블을 공통 속성을 기준으로 결합하는 연산
- 연산 기호: R ⋈ S
- 예시:
- 직원 ⋈ 직원.부서번호 = 부서.부서번호 부서 → 직원 테이블과 부서 테이블을 부서번호를 기준으로 결합
종류
- 세타 조인 (θ-Join): 조건을 사용하여 조인 (⋈ 조건)
- 동등 조인 (Equi-Join): 두 테이블의 공통 속성이 같은 경우 (⋈ R.A = S.B)
- 자연 조인 (Natural Join): 공통 속성이 자동으로 연결됨 (⋈)
- 외부 조인 (Outer Join): 매칭되지 않는 데이터도 포함
- 왼쪽 외부 조인 (Left Outer Join, ⟕)
- 오른쪽 외부 조인 (Right Outer Join, ⟖)
- 완전 외부 조인 (Full Outer Join, ⟗)
④ DIVISION (÷, 디비전 연산) – 조건을 만족하는 데이터를 찾는 연산
- A(B) ÷ C(D) 연산은 A에서 C에 포함된 D 속성 값을 가진 튜플만 반환
- 예시:
- 강의(교수, 과목) ÷ 과목(과목) → 모든 과목을 가르치는 교수를 찾는 연산
2. 집합 연산자 (Set Operations)
릴레이션이 집합 형태이므로, 집합 연산을 사용할 수 있습니다.
① UNION (∪, 합집합)
- 두 개의 릴레이션에서 중복 없이 모든 튜플을 포함하는 연산
- 연산 기호: R ∪ S
- 예시:
- A ∪ B → A와 B에 있는 모든 데이터를 포함
② INTERSECTION (∩, 교집합)
- 두 개의 릴레이션에서 공통된 튜플만 포함하는 연산
- 연산 기호: R ∩ S
- 예시:
- A ∩ B → A와 B에 동시에 존재하는 데이터만 포함
③ DIFFERENCE (-, 차집합)
- 첫 번째 릴레이션에서 두 번째 릴레이션에 없는 튜플만 반환하는 연산
- 연산 기호: R - S
- 예시:
- A - B → A에는 있지만 B에는 없는 데이터만 포함
④ CARTESIAN PRODUCT (×, 교차곱)
- 두 릴레이션의 모든 튜플을 조합하여 새로운 튜플을 생성하는 연산
- 연산 기호: R × S
- 예시:
- 직원 × 부서 → 모든 직원과 모든 부서를 조합한 새로운 테이블 생성
작성자 | 신수민 |
소 감 | SQL 개발자들이 정말 힘들게 이 언어를 개발했을 것 같다는 생각이 들었다. 이것만 있으면 데이터들을 다룰 수 있는 저장소를 만들 수 있을 것 같아 감사했다. |
일 시 | 2025. 3. 24 (월) 18:00 ~ 21:00 |
장 소 | 미래관 429호 자율주행스튜디오 |
참가자 명단 | 신수민, 임혜진, 배세은, 김윤희 (총 4명) |
사 진 | ![]() ![]() |
'수민' 카테고리의 다른 글
[호붕싸 모각코 7차] (0) | 2025.04.04 |
---|---|
[호붕싸 모각코 6차] (0) | 2025.03.31 |
[호붕싸 모각코 4차] (0) | 2025.03.23 |
[호붕싸 모각코 3차] 관계 데이터 모델 (0) | 2025.03.17 |
[호붕싸 모각코 2차] (0) | 2025.03.14 |