관계 대수와 관계 해석

Updated:

강의

http://www.kocw.net/home/search/kemView.do?kemId=317898

관계 대수와 관계 해석

1. 관계대수 연산자

1.1 Selection

  • 행을 추출하는 것
  • ex) employee 테이블에서 부서번호가 3인 것들을 모두 출력해라.

1.2 Projection

  • 열을 추출하는 것
  • ex) employee 테이블의 있는 사람들의 모든 이름을 출력해라

1.3 집합연산 : union, intersection, difference

1.4 Product, divide

1.5 Join (자연조인, natural join)

  • 부서번호의 실제 명칭을 알고자 한다.
  • Employee의 dno와 department의 dertno가 같은 것을 찾아서 결합하라
  • 동등 조인 결과에서 조인 속성 하나가 제거된 결과와 같음

1.6 한계

  • 관계 대수는 산술 연산을 할 수 없다.
    • 예를 들어 employee 테이블의 각 투플에 대해서 salary 속성 값이 10% 인상 되었을 때값을 알 수 없다.
  • 집단함수를 지원하지 않는다.
    • 집단 함수는 값들의 집합을 입력으로 받아 단일 값을 구하는 함수를 말한다.
    • 집단 함수의 예는 SUM, AVG 등을 말한다.
  • 정렬을 나타낼 수 없다.
    • employee 테이블의 모든 투플들을 사원의 이름 순으로 정렬하라고 표현할 수 없다.
  • 데이터베이스를 수정할 수 없다.
    • employee 테이블의 각 투플에 대해서 salary 속성값을 10% 인상하라고 요청할 수 없다.
  • 프로젝션 연산의 결과에 중복된 투플을 나타내는 것이 필요할 때가 있는데 이를 명시하지 못한다.

2. 관계 해석

2.1 투플 중심 관계 해석

  • 투플 == 행
  • 거래 금액이 2000 이상인 거래처의 상호와 사장을 알아 내어라
  • x.상호, x.사장 where x.거래금액 > = 2000

2.2 도메인 중심 관계 해석

  • 도메인 변수: 임의의 도메인을 지칭

  • 도메인 중심 항 : 속성 : 변수명
  • 도메인 중심 표현식 : 도메인 중심 항 where 조건식
  • 거래 금액이 2000 이상인 거래처의 상호와 사장을 알아 내어라
  • x, y where 거래처(x: 상호, y:사장, 거래금액 >= 2000)

3. 데이터베이스 설계

  1. 요구분석 : 요구사항 명세서
  2. 개념설계: 요구분석을 정보모델링, ER diagram
  3. 논리설계 : 개념설계를 ERD 변환, 개념 스키마 정규형
  4. 물리설계: 논리 설계를 논리-물리 스키마로 변환, 물리적 스키마 파일/인덱스