Database

관계 대수의 일반 집합 연산

Choi G.H 2021. 3. 30. 16:45
반응형

관계 데이터 연산

연산(operation)과 데이터 언어(data language)

  • 연산: 시스템 입장
  • 데이터 언어: 사용자 입장

관계 데이터 언어(relational data language)

  • 정형어(formal language)
    1. 관계 대수(relationalalgebra)
      • 절차 언어: how, what
    2. 관계 해석(relational calculus)
      • 비절차 언어: what
      • 투플 관계 해석(tuple relational calculus): QUEL
      • 도메인 관계 해석(domain relational calculus): QBE(Query By Example)

관계 해석과 관계 대수는 표현과 기능 면에서 동등하다.

 

관계 대수(Relational Algebra)

릴레이션을 처리하기 위한 연산의 집합

  • 릴레이션: 투플의 집합

기본 연산

  • 일반 집합 연산자
    • 합집합(UNION,∪)
    • 교집합(INTERSECT,∩)
    • 차집합(DIFFERENCE,-)
    • 카티션 프로덕트(CARTESIAN PRODUCT,×)
  • 순수 관계 연산자
    • 실렉트(SELECT, σ)
    • 프로젝트(PROJECT,Π)
    • 조인(JOIN, ⋈)
    • 디비전(DIVISION,÷)
  • 폐쇄 성질(closure property)
    • 피연산자와 연산 결과가 모두 릴레이션
    • 중첩(nested)된 수식의 표현이 가능

    1. 합집합

2. 교집합

 

 

3. 차집합

4. 카티션 프로덕트

 

※Note

합병가능(union-compatible)한 릴레이션

  • 합, 교집합 연산의 피연산자들은
    1. 차수가 같아야 함
    2. 대응 애트리뷰트 쌍 별로 도메인이 같아야 함
  • 합, 교, 카티션 프로덕트 연산은 결합적(associative)임

  • 합, 교, 카티션 프로덕트 연산은 교환적(commutative)임

 

반응형