Functional Dependency
참고 자료
1. Functional Dependency 란?¶
- 한 테이블에 있는 두 개의
attributes set
사이의constraint
- 집합 X 의 값에 따라 집합 Y 의 값이 유일하게 결정된때
'X 가 Y 를 함수적으로 결정한다. Y 가 X 에 함수적으로 의존한다 ' 라고 부르며 두 집합 사이의 이러한 제약 관계를 Functional Dependency (FD) 라고 부른다.
X = {empl_id}
Y = {empl_name, birt_date, position, salary}
empl_id 값에 따라 나머지 모든 필드의 값은 의미적으로 unique 하게 결정된다.
2. FD 주의 사항¶
- 테이블의 특정 순간, 상태가 아니라 의미적으로 파악 해야 한다.
- player
id | name | team_id | backnumber |
---|---|---|---|
1 | messi | 2 | 10 |
2 | sonny | 105 | 7 |
3 | ronaldo | null | null |
{name}
{team_id}
처럼 보이지만 id 3 번과 동명이인인 브라질의 Ronaldo 선수는 team_id 값이 있을 수 있다!
3. FD 예시¶
{std_id}
{stu_name, birth_date, addr}
{class_id}
{class_name, year, semester, credit}
{stu_id, class_id}
{grde}
{bank_name, bank_account}
{balance, open_date}
4. FD 의 종류¶
0. {} ->Y¶
항상 Y 의 값이 일정하다면 공집합 즉, 아무 attribute 없이도 Y 값을 결정할 수 있고 이러한 FD 를 {}
Y
처럼 표현 할 수 있다.
1. Trivial FD, Non-trivial FD¶
Y 가 X 의 subset 이라면 당연히 X
Y
가 성립하고 이런 FD 를 trivial FD 라 부른다.
그렇지 않은 FD 는 non-trivial FD 라 부른다.
2. Partial FD, Full FD¶
X 의 proper subset 으로도 FD 가 성립하면 partial FD 라 부르고 그렇지 않다면 full FD 라 부른다.
Last update:
February 27, 2023
Created: December 21, 2022
Created: December 21, 2022