반응형

1. 관계형 데이터베이스란? (RDBMS)

: 하나 이상의 2차원 테이블로 실 세계의 데이터를 표현한 데이터베이스

: SQL 을 사용하여 데이터를 저장, 검색, 수정, 삭제한다.

 

 

* nosql 은?

: 관계형 데이터베이스의 반대로 데이터 간의 관계를 정의하지 않는다. (스키마가 없다)

 

 

- 데이터베이스 스키마 = 테이블 스키마의 집합

데이터베이스 스키마 예제

 

 

- 데이터베이스 인스턴스 = 테이블 인스턴스의 집합

 

데이터베이스 인스턴스

 

 

 

2. 질의어

: 데이터를 삽입, 삭제, 수정, 검색(CRUD) 등 데이터 조작을 위한 연산들을 표현하기 위한 언어

 

- 절차적 언어

: 사용자가 원하는 결과를 얻기 위해 수행되어야 하는 일련의 절차를 명시해야 하는 언어

ex) C, Java, 관계 대수

 

- 비절차적 언어

: 수행 절차는 기술하지 않고 사용자가 원하는 결과만을 형식적, 선언적으로 명시하는 언어

ex) 관계 해석, SQL

 

 

 

 

 

 

* 관계 대수와 관계 해석은 SQL 문법의 이론적 기반을 제공한다.

 

3. 관계대수

 

- 연산 종류

기본 연산 : 선택, 추출, 재명명, 집합 연산(합, 차, 교, cartesian product)

추가 연산 : 조인, 자연조인, 외부조인, 지정연산, 나누기연산

 

 

주의 !!

관계 대수의 결과는 중복을 제거함

다만, Oracle 등 실제 DBMS에서는 대부분 허용함

 

 

 

 

4. 선택(selection)

- 시그마 할 때 's' -> selection

- 조건식 : <, >, <=, >=, <> 와 and(^), or(v), not(기역..) 의 조합

- AND 할 때 A 의 뾰족한 부분이 ^와 닮음

 

만약, 해당 필드의 값이 Null 일 경우?

값을 알지 못하기 때문에 검색 결과에서 배제

 

 

 

예시 1>

 

예시 2>

 

 

 

 

 

5. 추출(projection)

- 파이 할 때 P -> Projection

- 추출하고자 하는 테이블의 필드를 작성

 

 

 

 

ex>

 

 

 

 

6. 연산자들의 조합

 

 

 

 

- 선택 연산은 교환법칙 성립 O

- 추출 연산은 교환법칙 성립 X : 첫 번째 필드가 두 번째 필드를 포함하면 교화법칙 성립

 

 

 

 

7. 재명명 연산(rename)

: 로우 니까 R 이니까 rename

 

 

- 주의

본래 데이터베이스에 저장된 테이블명/필드명이 변경되는 것은 아님

 

 

 

글이 너무 길어지는 관계로

집합은 다음 글에서 설명하도록 하겠습니다.

반응형

+ Recent posts