관계연산
관계대수 : 절차적 특징, what, how를 모두 명시,
일반 집합연산자 : 합집합, 교집합, 차집합, 카티션 프로덕트
합,교,카티션은 교환법칙이 성립한다. R과 S의 합집합 = S와 R의 합집합
차집합은 순서를 바꾸면 전혀 다른 결과가 나오기 때문에 성립하지 않음
SELECT a, b FROM R, S -> 카티션 프로덕트
R이 3행, S가 5행이면 15행이 출력되기 때문에 조인에 비해서 굉장히 효율이 안좋다.
SELECT R.a, S.b FROM R,S WHERE R.c = S.c; -> 조인
마찬가지의 경우에 5행 이하로 출력되기 때문에 카티션 프로덕트에 비해서 굉장히 효율이 좋다.
순수 관계연산자 : SELECT σ, PROJECT π, JOIN ⋈, DIVISION ÷
SELECT : 조건에 만족하는 행을 추출 -> 필요없는 행을 모두 삭제 -> 특정 컬럼을 검색
선택도(Selectivity)가 낮을때는 시그마를 먼저쓰는것이 효율이 좋다.
SQL에서 WHERE
PROJECT : 조건에 만족하는 열을 추출 -> 필요없는 열을 모두 삭제 -> 특정 튜플을 검색
SQL에서 SELECT
JOIN :
DIVISION :
관계해석 : 비절차적 특징, what만 명시,
튜플 관계 해석 : 1튜플 전체를 다 가져와서 필요한 속성을 골라 쓰는 방법
도메인 관계 해석 : 필요한 속성 일부만 변수로 잡아서 골라쓰는 방법
'프로그래밍 > ---DBMS---' 카테고리의 다른 글
정규화란? (0) | 2018.09.29 |
---|---|
DB 용어 정리 DDL DML DCL TCL (30) | 2018.05.24 |