본문 바로가기
SQLD

SQL 이론 - 1과목 2장 (2)

by Poorm 푸름 2023. 6. 17.

1. 정규화

 

- 반복적인 데이터를 분리하고 각 데이터가 종속된 테이블에 적절하게 배치

- 테이블 데이터 용량 최소화

 

- 1차 정규화 : 같은 내용 중복일 때 중복제거

- 2차 정규화 : 함수종속 관계일 때 테이블 분리

- 3차 정규화 : PK가 아닌 일반 컬럼에 의존하는 컬럼 분리 (일반속성끼리 종속)

 

* 칼럼 = , 로우 =

* 정규형 = 정규화를 완료한 상태

 

- 1NF (1정규형) : 모든값이 원자값 (더이상 쪼개지지 않는 값)

- 2NF (2정규형) : 부분함수 종속 제거 (PK2개 이상일 때)

- 3NF (3정규형) : 이행함수 종속 제거

 

 

2.정규화의 성능

 

- 정규화는 입력/수정/삭제의 성능 향상

 

- 반정규화는 조회의 성능 향상

 

- 그러나 정규화로 조회 성능이 향상되는 경우 O (반정규화만 조회 성능을 향상시키는 것은 NO)

 

 

3.정규화 예시

 

 

 

: 학번을 알면 학생명과 학년을 알 수 있다

( = 식별자 중 일부가 다른함수 결정)

: 2차 정규화 필요해

 

 

 

: 학생 테이블 따로 만들고 원래있던 테이블과 연결

 

 

 

 

4. 함수적 종속성(Functional Dependency)

 

- 함수의 종속성

: 데이터들이 어떤 기준값에 의해 종속되는 현상

: 기준값을 결정자, 종속되는 값을 종속자

 

'SQLD' 카테고리의 다른 글

SQL 이론 - 1과목 2장 (4)  (0) 2023.06.17
SQL 이론 - 1과목 2장 (3)  (1) 2023.06.17
SQL 이론 - 1과목 2장 (1)  (0) 2023.06.16
SQL 이론 - 1과목 1장 (5)  (1) 2023.06.16
SQL 이론 - 1과목 1장 (4)  (0) 2023.06.16