본문 바로가기
강의 실습/비전공자도 이해할 수 있는 DB 설계 입문 실전

[규칙 3] 헷갈릴 땐 관계(1:1, 1:N, N:M)를 파악해봐라 - 4

by jint 2026. 2. 20.

1. 1:N 관계의 특징
관계를 파악한 후, N 쪽의 테이블에 FK가 들어가야 한다.
법칙 : N 쪽 테이블에 FK 들어감

예시 1)
#1 엔티티 간에 어울리는 동사 찾기
사용자가 이메일을 "소유한다."
이메일이 사용자에 의해 "소유된다."

#2 찾은 동사를 활용해 적절한 단어(하나의 or 여러 개의) 찾기
하나의 사용자가 "여러 개의" 이메일을 소유한다.
하나의 이메일이 "한 명의" 사용자에 의해 소유된다.

#3 관계 판단
사용자 : 이메일 = 1 : N

# Before
- users (사용자)

id (PK) 이름 이메일
1 송진성 js123@naver.com, js00@naver.com
2 김땡땡 king123@naver.com, queen123@naver.com


# After
- users (사용자)

id (PK) 이름
1 송진성
2 김땡땡


- emails (이메일)

id (PK) 이메일 사용자 id (FK)
1 js123@naver.com 1
2 js00@naver.com 1
3 king123@naver.com 2
4 queen123@naver.com 2


예시 2)
#1 엔티티 간에 어울리는 동사 찾기
가게는 상품을 "판다."
상품은 가게에 의해 "팔린다."

#2 찾은 동사를 활용해 적절한 단어(하나의 or 여러 개의) 찾기
하나의 가게는 "여러 개의" 상품을 판다.
하나의 상품은 "하나의" 가게에 의해 팔린다.

#3 관계 판단
가게 : 상품 = 1 : N

# Before
- stores (가게)

id (PK) 가게명 판매 상품
1 JSCODE 카페 JS아메리카노, JS카페라떼
2 진성이네 국밥 진성이네 돼지국밥, 진성이네 육개장, 진성이네 수육


# After
- stores (가게)

id (PK) 가게명
1 JSCODE 카페
2 진성이네 국밥


- products (판매 상품)

id (PK) 상품명 가게 id (FK)
1 JS아메리카노 1
2 JS카페라떼 1
3 진성이네 돼지국밥 2
4 진성이네 육개장 2
5 진성이네 수육 2



참고링크 : https://www.inflearn.com/course/%EB%B9%84%EC%A0%84%EA%B3%B5%EC%9E%90-db-%EC%84%A4%EA%B3%84-%EC%9E%85%EB%AC%B8?cid=335049

 

비전공자도 이해할 수 있는 DB 설계 입문/실전| JSCODE 박재성 - 인프런 강의

현재 평점 4.9점 수강생 1,501명인 강의를 만나보세요. 비전공자 입장에서도 쉽게 이해할 수 있고, 실전에서 바로 적용 가능한 'DB 설계 입문/실전' 강의를 만들어봤습니다! 복잡한 개념을 몰라도

www.inflearn.com

댓글