본문 바로가기

MySQL

4. 정규화(Normalization)

  • 1NF(제 1정규화)
    • 테이블 안의 모든 값들은 단일 값이여야 함
  • 2NF(제 2정규화)
    • 1NF를 만족하면서, 완전 함수 종속성을 가진 관계들로만 테이블을 생성하는 것
    • 종속성들 중 종속 관계에 있는 열들끼리 테이블을 구분해 주는 것

✔ 함수 종속성
x값에 따라서 y이 결정되는 경우

 

  • 3NF(제 3정규화)
    •  2NF를 만족하면서, 기본키에 대해 이행적 함수 종속이 되지 않는 것을 의미
  • 비정규화
    • 정규형에 일치하게 되어 있는 테이블을 정규형을 지키지 않는 테이블로 만드는 것
    • 테이블을 조회하는 용도로 사용하거나, 너무 데이터가 많이 나뉘어 성능이 저하된다면 비정규화를 하여 테이블을 다루는 것이 더 효율적일 수 있음
    • 어떤 작업을 수행하는지, 어떤 데이터를 사용하는지에 따라 적절한 정규화를 하는 것이 좋음

'MySQL' 카테고리의 다른 글

6. join  (0) 2023.03.20
5. 문자열 함수  (0) 2023.03.20
3. Select  (0) 2023.03.16
2. Update, Delete, Insert  (0) 2023.03.16
1. DataBase(데이터 베이스)  (0) 2023.03.16