관계형 데이터베이스 : 관계형 모델을 기반으로 작성된 데이터베이스
1. 관계형 모델
- 관계형 모델의 기본적인 요소는 릴레이션(Relation)
- 관계형 모델의 릴레이션은 SQL에서 말하는 테이블
* 릴레이션은 테이블을 말함!
- 관계형 모델의 릴레이션에는 몇 가지 속성(Attribute)이 있음
- 속성 : 속성이름과 형 이름으로 구성 / SQL에서 열에 해당
- SQL에서 행은 관계형 모델에서 튜플(Tuple)이라 함
- 관계형 모델은 데이터 구조에 관해 정의함
- 릴레이션은 튜플의 집합
- 관계대수 : 릴레이션에 대한 연산이 집합의 대한 연산에 대응된다는 이론
- 관계대수 기본규칙
-- 하나 이상의 관계를 바탕으로 연산
-- 연산한 결과, 반환되는 것 또한 관계
-- 연산을 중첩 구졸 실행해도 상관 X
2. 관계형 모델과 SQL
합집합(UNION)
: 릴레이션끼리의 덧셈을 말함
SELECT * FROM A UNION SELECT * FROM B
차집합(Difference)
: 릴레이션끼리의 뺄셈
: SQL에서는 EXCEPT에 해당
SELECT * FROM A EXCEPT * FROM B
교집합(Intersection)
: 릴레이션끼리의 공통부분
: SQL에서는 INTERSECTION에 해당
SELECT * FROM A INTERSECITON SELECT * FROM B
곱집합(Cartesian Product)
: 릴레이션끼리의 대전표를 조합하는 연산
: SQL에서는 FROM구에 복수의 테이블을 지정한 경우 곱집합으로 계산
: CROSS JOIN으로 교차결합을 하면 곱집합을 구할 수 있음
SELECT * FROM A, B
SELECT * FROM A CROSS JOIN B
선택(Selection) / (WHERE조건)
: 튜플의 추출을 말함
: 선택은 제한이라 불리기도 함
: 튜플은 SQL에서 행을 말하기 때문에 WHERE 구에 조건을 지정해 데이터를 검색하는 것에 해당
SELECT * FROM A WHERE no < 3
투영(Projection) / (SELECT 구)
: 속성의 추출
: SQL에서 속성은 열을 말하기 때문에 SELECT 구에 결과로 반환할 열을 지정하는 것에 해당
SELECT a FROM A
결합(Join)
: 릴레이션끼리 교차결합해 계산된 곱집합에서 결합조건을 만족하는 튜플을 추출하는 연산
: SQL에서는 내부결합에 해당
: 관계대수에도 내부결합괴 외부결합이 있음
SELECT a FROM A INNER JOIN B ON A.no = B.no
'데이터분석 > SQL' 카테고리의 다른 글
SQL 첫걸음 - 정규화 (0) | 2025.03.07 |
---|---|
SQL 첫걸음 - 데이터베이스 설계 (0) | 2025.03.07 |
SQL 첫걸음 - 테이블 결합(JOIN) (0) | 2025.03.07 |
SQL 첫걸음 - 집합 연산 (0) | 2025.03.07 |
SQL 첫걸음 - 뷰 작성과 삭제 (0) | 2025.03.07 |