inflearn logo
강의

Course

Instructor

[2026] SQLD All-in-One: Pass on Your First Try Even as a Non-Major

Normalization

제 3정규화 관련 질문

46

wls61891548

1 asked

0

image.png

 

image.png

 

sql 빅데이터 코딩-테스트 데이터-엔지니어링 SQLD

Answer 3

0

algolearn

교재를 보시면 아래의 테이블은 제2정규화가 완료된 테이블입니다.

image.png

 

이 테이블은 과목과 개설과목의 성격을 모두 가지고 있습니다. 왜냐하면 과목 테이블과 + 담당교수가 함께 있기 때문이죠. 개설과목의 성격을 가진 이 테이블에서 개설과목ID 가 없는 상태입니다. 때문에 담당교수가 과목명을 결정하게 됩니다. 그래서 이행함수 종속성의 성격이 발생하는 데요. (현재 한 과목을 두 명의 교수가 담당하는 경우가 있어서 담당교수가 과목명을 결정하는 구조도 아닙니다. 이 조건이 충족하려면 하나의 과목은 한명의 교수가 담당한다는 제약이 있으면 가능합니다.)

 

그렇기 때문에 과목과 개설과목을 분리해야 합니다.

교안의 설명이 다소 부족한 것으로 보입니다. 해당 내용은 보완을 해두겠습니다.

 

[보완설명]

  • 현재 [과목] 테이블은 [개설과목]의 성격을 띠고 있으나 고유한 개설과목 식별자(ID)가 없다. 이로 인해 담당교수와 과목명이 직접 연결된 구조를 보인다. 만약 ‘하나의 과목은 한 명의 교수만 개설할 수 있다’라는 제약 조건이 있다면 교수가 과목을 결정하는 구조가 성립한다. 이때는 개설과목 → 담당교수 → 과목명으로 이어지는 이행함수 종속이 발생할 수 있다. 

  • 하지만 현재 구조는 하나의 과목을 두 명의 교수가 개설하고 있으므로 교수와 과목명 사이에는 이행함수 종속이 성립하지 않는다. 오히려 [개설과목]의 성격을 가진 이 엔터티에서 과목ID는 일반속성이 되기 때문에 개설과목ID → 과목ID → 과목명의 이행함수 종속이 발생하게 된다.

 

 

감사합니다.

 

 

 

0

wls61891548

그리고 담당교수가 과목명을 결정하는게 아니라, 과목 ID + 담당 교수로 과목명이 결정되는게 맞지 않나요??

 

0

algolearn

현재 엔터티는 과목과 개설과목의 성격을 모두 가지고 있기 때문에, 과목ID + 담당 교수가 과목명을 결정한다는 설명이 적합해보일 수 있습니다. 교안의 설명이 충분치 못해서 발생한 문제입니다.

 

이 엔터티를 개설과목엔터티로 본다면 과목id 가 과목명을 결정하는 구조로 볼 수 있습니다. 이때 과목id는 개설과목 엔터티의 일반속성이 됩니다.

0

wls61891548

A -> B : A를 알면 B가 결정되어야 하는건데, 미적분을 알아도 담당교수가 결정되는게 어렵지 않나요?? ( 미적분 담당교수가 홍길동/나적분이기 때문 )

0

algolearn

네. 맞습니다. 현재 구조로는 알기 어렵습니다. 만약 하나의 과목은 한 명의 교수가 개설할 수 있다는 제약 조건이 붙는다면 가능한데, 현재는 제약조건이 안 붙어 있기 때문입니다.

GROUP BY 절 문제 4번에서 집계함수가 반드시 포함? 필수?

1

62

2

Live SQL 스크립트 설치건

1

69

2

mac erwin 설치 관련

1

113

2

모바일 앱

1

53

1

sql기본 단원정리문제 57번과 58번 질문드립니다

1

142

2

이론공부

1

58

1

ERD Optional 질문

1

47

2

43페이지 4번 문제 질문드립니다

0

51

1

Part1 > Chapter2 단원정리문제

0

60

2

ORDER BY 자료 및 강의 내용에 문제가 있는 것 같은데, 체크 부탁드립니다.

1

73

2

도커 설치 오류

0

142

2

노랭이 기출

0

92

2

SQLD 자격증

0

94

1

Part 2 > Chapter 3 단원 정리 문제

0

84

2

문제에 문제가 있는 것 같습니다.

0

83

2

여기도 문제가 있는거 같습니다.

0

81

2

문제가 잘못된 것 같습니다.

0

65

2

오라클 콘테이너 설치 관련 문의

1

71

2

단원정리문제 오기 ?

1

67

2

ORA-12541 오류

0

798

4

단원 정리 문제(2) 중 6,7,8,12 질문

1

81

1

2가지 문제 발생

1

87

2

실행안됨

1

82

2

window , docker

1

83

2