데이터베이스를 사용하는 주된 이유는 쿼리를 사용하여 데이터를 효율적으로 처리하기 위해서다.
Relational Algebra
- Relational model은 데이터에 대한 작업이 표준화되어있고, 그 작업을 수학적으로 나타낼 수 있다.
- Relational algebra - 가장 많이 사용됨
- Relational calculus
- Datalog
- ODL은 데이터에 대한 여러 작업을 수행할 수있는 메소드를 사용하는 방법이다.
- 아직 수학적으로 표현할 수 없다
- E/R model은 데이텅 조작에 대한 구체적인 방법을 포함하지 않는다
What is Algebra?
- Algebra = operators + atomic operands
- Arithmetic algebra
- Atomic operands: x나 y같은 변수 또는 37과 같은 상수
- Operators: +, -, *, /
- Expression은 Operators와 atomic operands 또는 다른 Expression을 적용함으로써 만들어진다
- 101
- 1+2*3
- x + 1
Relational Algebra
- Atomic operands
- 릴레이션을 나타내는 변수(r1, r2 등)
- 릴레이션 자체를 나타내는 상수
- Operators
- 교집합, 합집합, 차집합
- 릴레이션에서 일부를 떼어낼 때는 셀렉션, 프로젝션
- 두 릴레이션의 튜플을 합칠 때는 커티션 프로덕트, 내추럴 조인, 세타 조인
- 이름을 바꿀 땐 p
- Expression은 Operators와 atomic operands 또는 다른 Expression을 적용함으로써 만들어진다
Query
- 쿼리는 Relational algebra의 표현식이다
- Relational algebra는 인류에게 있어서 질의어를 처음 수학적으로 나타낸 것이다
- 임의의 릴레이션 R과 S에서
- R 합집합 S - R과 S를 합침
- 합집합 시 중복되는 튜플은 집합의 특성에 의해 하나만 남음
- R 교집합 S - R과 S의 겹치는 부분을 구함
- R 차집합 S - R과 S의 차를 구함
- R 합집합 S - R과 S를 합침
- 조건
- R과 S의 스키마가 같아야 함
- 컬럼의 순서, 수가 같아야 하고, 데이터 타입도 같아야 함
- R과 S의 스키마가 같아야 함
Projection
- 중복되는 컬럼은 하나만 남음
Selection
Cartesian Product(X)
- 릴레이션을 합칠 때 컬럼이나 튜플의 수가 많으면 크기가 방대해지기 때문에 실제로는 거의 사용되지 않음
Natural Joins
- R과 S를 결합하는데, R만 있는 부분, S만 있는 부분, 그리고 두 릴레이션에서 같은 컬럼을 결합한다.
- 같은 컬럼이 없을 경우 Cartesian Product가 됨
- 컬럼의 내용이 다른 경우 버림
Uploaded by Notion2Tistory v1.1.0