35분
실습: 테이블 정규화하기
Day 1: 같은 주소가 100군데 있어요 - 정규화
실습: 테이블 정규화하기
데이터 모델링 > Day 1: 같은 주소가 100군데 있어요 - 정규화
학습 목표
비정규화 테이블을 정규화할 수 있다 정규화 후 데이터 조회 쿼리를 작성할 수 있다
정규화 실습
비정규화된 테이블을 1NF → 2NF → 3NF로 정규화해보세요.
시나리오
학원 수강 시스템의 테이블입니다. 여러 문제가 있어요. 찾아서 고쳐보세요.
문제 1: 1NF 위반 수정
students_bad 테이블의 courses 컬럼에 여러 과목이 콤마로 저장되어 있습니다. 1NF를 적용하여 분리하세요.
문제 2: 2NF 위반 수정
enrollments_bad 테이블은 복합키인데, 강좌명이 강좌ID에만 종속됩니다. 2NF를 적용하여 분리하세요.
문제 3: 3NF 위반 수정
instructors_bad 테이블에서 부서 정보가 이행 종속입니다. 3NF를 적용하여 분리하세요.
문제 4: 정규화된 테이블에서 조회
정규화된 테이블들을 JOIN하여 원래 데이터를 조회하세요.
에디터 로딩 중...
힌트 보기
- • PostgreSQL: string_to_array(column, delimiter)로 문자열을 배열로 변환
- • unnest(array)로 배열을 행으로 변환
- • TRIM()으로 앞뒤 공백 제거
- • DISTINCT로 중복 제거 후 삽입
정답 보기
에디터 로딩 중...