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
- 주의
본래 데이터베이스에 저장된 테이블명/필드명이 변경되는 것은 아님
글이 너무 길어지는 관계로
집합은 다음 글에서 설명하도록 하겠습니다.
'Computer Science > Database' 카테고리의 다른 글
SQL Plus 명령어 (0) | 2020.10.16 |
---|---|
관계형 데이터베이스 5) 집합 연산, 조인 (0) | 2020.10.13 |
관계형 데이터베이스 3) 키(key) (0) | 2020.10.11 |
관계형 데이터베이스 2) 테이블 스키마, 테이블 인스턴스 (0) | 2020.10.06 |
관계형 데이터베이스 1) 릴레이션이란? (0) | 2020.10.06 |