데이터베이스(Database) 관계 대수 정리

2024. 11. 7. 11:31·IT Dictionary/Database
반응형

▶ 일반 집합 연산자 ◀

1. 합집합(UNION)

  • 결과 값 카디널리티가 두 릴레이션의 카디널리티의 합보다 크지 않음. (교집합이 존재할 수도 있기 때문)

 

2. 교집합(INTERSECTION)

  • 결과 값 카디널리티가 두 릴레이션 중 더 적은 카디널리티를 갖고 있는 릴레이션보다 크지 않음.

 

3. 차집합(DIFFERENCE)

  • 결과 값 카디널리티가 릴레이션 R의 카디널리티보다 크지 않음 (R - S)
  • 교집합 포함X

 

4. 교차곱(CARTESIAN PRODUCT)

  • 두 튜플들을 교차하여 곱해서 새로운 릴레이션을 만듬 (R x S)

 

😗 관계 대수를 이루기 위한 최소 조건

  • 두 릴레이션의 차수가 같아야함
  • 두 릴레이션의 대응되는 속성의 도메인이 같아야함
  • 단, 교차곱은 해당 조건들이 충족되지 않아도됨

 

 

▶ 순수 관계 연산자 ◀

1. SELECT( σ )

  • 조건에 만족하는 투플들 선택하여 결과 릴레이션 출력
  • WHERE 절이 이에 해당
  • 표기 형식 : σ(조건)({R})   =>  σ이름='홍길동'(조선) or 조선 where 이름='홍길동' 
  • 행을 구하는 것이므로 수평적 연산 라고도 함.
프레디킷(predicate) : 비교연산자(>, <, =, .....)와 논리 연산자(AND ∧, OR ∨. NOT ㄱ)  등을 나타냄

 

2. PROJECT( π )

  • 선택한 속성들의 투플들 선택하 결과 릴레이션 출력.
  • 표기 형식 :  π(속성 리스트){(R)}  =>  π이름, 나이, 성별(조선) or 조선[이름, 나이, 적립금]
  • 열을 구하는 것이므로 수직적 연산 라고도 함.

👍 SELECT와 PROJECT가 합쳐져 완성된 SELECT 구문이 만들어짐

( π 이름, 나이( σ이름='홍길동'(조선))

 

3. JOIN( ⋈ )

  • 집합 연산자들은 도메인과 차수가 같아야 한다는 한계점이 있음
  • 표기 형식 : R⋈T
A B
a1 b1
a2 b2
a3 b3

R 릴레이션

B C
b4 c1
b1 c2
b2 c3

T 릴레이션

A
a1

S 릴레이션

   3. 1 동등 조인

  • 조인 속성이 모두 나타냄
  • 표기 형식 : R ⋈ ᴀ=ʙT    (A, B = 속성)
A B B C
a1 b1 b1 c2
a2 b2 b2 c3

   3. 2 자연 조인

  • 중복되는 조인 속성이 하나만 나타냄
  • 표기 형식 : R ⋈ ɴT

   3. 3 세타 조인

  • 조인 속성에 조건을 추가하여 나타냄
  • 표기 형식 : R ⋈ ᴀΘʙT    (Θ = 비교 연산자)

   3. 4 세미 조인

  • 조인 속성에 프로젝트 연산을 수행함 
  • 표기 형식 : R ⋉ T      (왼쪽 릴레이션 속성만 출력)      (R ⋉ T != T ⋉ R)

   3. 5 외부 조인

  • 자인 조인 연산에서 제외되는 투플도 모두 포함
  • 릴레이션의 투플에서 속성 값이 없다면 NULL 로 처리

 

4. DIVISION( ÷ )

    • T 릴레이션과 관련이 있는 R의 투플의 결과로 구성시킴, 나눗셈과 유
    • 표기 형식 : R ÷ T 
B
b1

R ÷ S

 

 

반응형

'IT Dictionary > Database' 카테고리의 다른 글

데이터베이스(Database) SQL ALTER TABLE 정리  (0) 2024.12.04
데이터베이스(Database) 설계하기  (0) 2024.11.21
데이터베이스 SQL CREATE TABLE 정리  (0) 2024.11.10
데이터베이스 SQL SELECT문 총정리  (1) 2024.11.08
컴활 데이터베이스(Database) 기본 용어 정리  (0) 2023.04.29
'IT Dictionary/Database' 카테고리의 다른 글
  • 데이터베이스(Database) 설계하기
  • 데이터베이스 SQL CREATE TABLE 정리
  • 데이터베이스 SQL SELECT문 총정리
  • 컴활 데이터베이스(Database) 기본 용어 정리
MutJangE
MutJangE
즐거운 인생
  • MutJangE
    MutJangE
    MutJangE
  • 전체
    오늘
    어제
    • 분류 전체보기 (74)
      • IT Dictionary (47)
        • !Solution! (0)
        • Database (7)
        • Network (8)
        • Linux (1)
        • Computer Science (7)
        • Service (2)
        • 정보보안산업기사 (22)
      • 일상 (8)
        • 배포중인 웹 서비스 (1)
        • CERT병 (6)
      • 프로그래밍 (19)
        • Java (1)
        • C# (6)
        • Unity (7)
        • React (4)
        • React native (1)
  • 블로그 메뉴

    • 링크

    • 공지사항

    • 인기 글

    • 태그

    • 최근 댓글

    • 최근 글

    • hELLO· Designed By정상우.v4.10.5
    MutJangE
    데이터베이스(Database) 관계 대수 정리
    상단으로

    티스토리툴바