본문 바로가기

데이터분석/SQL

SQL 첫걸음 - 관계형 모델

관계형 데이터베이스 : 관계형 모델을 기반으로 작성된 데이터베이스

 

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