데이터베이스 (5) 관계 데이터 연산

gmlwlswldbs·2021년 12월 5일
0

Computer Science

목록 보기
6/16

관계 데이터 연산

관계 데이터 연산의 개념

  • 관계 데이터 모델에서의 연산 : 원하는 데이터를 얻기 위해 릴레이션에 필요한 처리 요구를 수행
    • 데이터 언어
  • 관계 대수 : 원하는 결과를 얻기 위해 데이터의 처리 과정을 순서대로 기술
    • 절차 언어
  • 관계 해석 : 원하는 결과를 얻기 위해 처리를 원하는 데이터가 무엇인지만 기술
    • 비절차 언어
  • 질의 : 데이터에 대한 처리 요구

관계 대수

관계 대수의 개념과 연산자

  • 피연산자 : 릴레이션, 결과 : 릴레이션 -> 폐쇄 특성 (릴레이션을 연산한다)

일반 집합 연산자

  • 제약조건
    1. 연산을 위해 피연산자가 두 개 필요하다 (두 릴레이션을 연산)
    2. 합, 교, 차집합은 피연산자인 두 개의 릴레이션이 합병 가능해한다
      • 합병 가능
        1. 두 릴레이션의 차수가 같다. (= 속성 개수가 같다)
        2. 두 개의 릴레이션에서 서로 대응되는 속성의 도메인이 같다.
          도메인이 같으면 속성의 이름은 달라도 된다.
  1. 합집합 (R∪S)
    • 중복되지 않고 한번만 나타난다. (릴레이션의 기본 특징 유지)
  2. 교집합 (R∩S)
    • 두 릴레이션 모두에 속하는
  3. 차집합 (R-S)
    • 교환 X, 결합 X
  4. 카티션 프로덕트 (R×S)
    • 튜플을 모두 연결하여 만들어진 새로운 튜플이 연산 결과인 릴레이션
    • 합병은 불가능해도 카티션 프로덕트는 가능하다
    • 릴레이션이름.속성이름으로 표기
    • 차수는 두 릴레이션의 차수 더한 것, 카디널리티는 두 릴레이션의 카디널리티 곱한 것

순수 관계 연산자

  1. 셀렉트 : σ(조건식)(릴레이션) / 릴레이션 where 조건식
    • 주어진 조건을 만족하는 튜플만 선택하여 결과 릴레이션을 구성
    • 수평적 부분집합을 생성하는 것과 같다
    • 하나의 릴레이션을 대상으로 수행
    • 조건식 = 비교식 = 프레디킷 : 비교 연산자를 이용해 구성, 도메인 일치
    • 교환적 특징
  2. 프로젝트 : π(속성리스트)(릴레이션) / 릴레이션[속성리스트]
    • 선택한 속성에 해당하는 값으로 결과 릴레이션을 구성
    • 수직적 부분집합을 생성
  3. 조인 : 릴레이션1▷◁릴레이션2
    • 두 릴레이션이 공통으로 가지고 있는 속성, 두 릴레이션이 관계가 있음을 나타낸다.
    • 조인 속성의 값이 같은 튜플만 연결하여 만들어진 새로운 튜플을 포함
    1. 세타조인 : 모든 튜플을 연결한 새로운 튜플
    2. 동일조인 : 세타조인에서 연산자가 '='인 경우의 조인. 속성이 중복되어 나타남
  4. 디비전 : R ÷ S
    • S의 모든 튜플과 관련 있는 R의 튜플로 결과 릴레이션을 구성

확장된 관계 대수 연산자

  1. 세미 조인
    • S의 조인 속성으로만 구성한(프로젝트한) 릴레이션을 R에 자연 조인
    • 교환적 특성 없음
  2. 외부 조인
    • 조인 속성 값이 같은 튜플이 상대 릴레이션에 존재하지 않아 조인 연산에서 제외된 모든 튜플을 경과 릴레이션에 포함
    • 널 값 처리

관계 해석

📍 조인

0개의 댓글