AI 시대 DB 모델링 & SQL 완벽 마스터4-1 연습 문제
테크타니 LEARN — 섹션 04 · 연습 문제

4-1 연습 문제 — 관계의 구조,
직접 그려본 설계만 머리에 남는다

이번 강의에서 배운 것 — 데이터베이스의 본질은 "관계", "같은 정보 두 번 적지 않기", 그리고 AI 시대엔 모델링이 진짜 실력이라는 것. 이번엔 키보드보다 머리로 푸는 개념 문제입니다 — 테이블과 관계를 직접 그려본 것만 머리에 남습니다.

문제3문제 (도전 1 포함)권장 소요10~15분유형개념 · 설계 사고 (SQL 타이핑 없음)준비물메모지 + AI 과외 선생님 (2-4)

섹션 4 에서의 위치

섹션 3 SQL 핵심 문법

완료 ✓

4-1 관계의 구조

강의 완료 ✓

4-1 연습 문제

지금 여기

4-2 ~ 4-4

부모/자식 · 관계 유형 · FK

4-5 ~ 4-8

ERD · 정규화 · 모델링 실습

AI 과외 선생님 활용법 — 개념 문제는 메타 질문까지

2-4에서 만든 AI 과외 선생님 세션을 그대로 쓰세요. 막히면 정답이 아니라 힌트만 요청하고, 풀어본 뒤에는 본인 답을 던지며 검증을 요청하세요. 이번 챕터는 개념 문제라 — AI 가 검증할 때 “이 사고가 맞아?” 같은 메타 질문도 같이 던져보면 효과가 배가 됩니다.

문제 1. 어떤 테이블이 필요한가

다음 비즈니스 요구사항을 보고 — 어떤 테이블들이 필요할지 머릿속에 그려보세요.

“학원에서 학생들이 여러 강의를 신청할 수 있다. 강의마다 강사가 한 명씩 있고, 강사는 여러 강의를 가질 수 있다.”

기대 결과: 최소 3-4 개 테이블 + 그들 사이 관계

정답 보기

필요한 테이블 (최소 3개, 일반적으로 4개):

  • students (학생): student_id PK, 이름 등
  • teachers (강사): teacher_id PK, 이름 등
  • lectures (강의): lecture_id PK, 강의명, teacher_id FK
  • enrollments (신청 내역, 중간 테이블): student_id FK + lecture_id FK

관계:

  • 강사 → 강의 (1:N)
  • 학생 ↔ 강의 (N:M — enrollments 가 풀어줌)

핵심 사고: “한 학생이 여러 강의 신청 + 한 강의를 여러 학생이 신청” → N:M → 중간 테이블 필요.

문제 2. shop ERD 를 따라가기

shop 데이터에서 — “김철수가 어떤 상품을 샀는지” 알려면 — 어떤 테이블들을 어떤 순서로 따라가야 할까요?

기대 결과: 테이블 4개를 거치는 경로 (회원 → ? → ? → 상품)

기대 결과 — 경로 스케치
members (회원 — 김철수 찾기)
↓ ??? 로 연결
??????? (두 번째 테이블)
↓ ??? 로 연결
??????? (세 번째 테이블)
↓ ??? 로 연결
products (상품명·가격)
가운데 테이블 2개 + 연결 고리(컬럼) 3개를 채우는 게 이번 문제
정답 보기
members (회원ID 로 김철수 찾기)
  ↓ member_id 로 연결
orders (김철수의 주문들)
  ↓ order_id 로 연결
order_items (그 주문들에 들어간 상품 정보)
  ↓ product_id 로 연결
products (상품명·가격)

4 단계 의 부모-자식 체인을 따라가야 합니다. 이게 “관계의 구조” 를 따라가는 사고의 실제 모습이에요.

문제 3 (도전). AI 에게 컨텍스트 주기

당신이 회사 DB 의 users, posts, comments 테이블을 가지고 일하고 있다고 가정해봅시다. AI 에게 “댓글이 많은 게시글 TOP 5” SQL 을 요청할 때 — AI 에게 어떤 정보를 줘야 정확한 SQL 이 나올까요? 프롬프트를 직접 작성해보세요.

힌트

4-1 의 “AI 시대의 의미”데이터 + 관계 두 가지.

모범 프롬프트 예시
다음 테이블 구조를 가진 MySQL DB 에서 SQL 을 짜줘:

[테이블]
- users (user_id PK, username, joined_at)
- posts (post_id PK, user_id FK, title, content, created_at)
- comments (comment_id PK, post_id FK, user_id FK, content, created_at)

[관계]
- users 1:N posts (한 사용자가 여러 게시글)
- posts 1:N comments (한 게시글에 여러 댓글)

[요구사항]
- 댓글이 많은 게시글 TOP 5
- 출력 컬럼: 게시글 제목, 댓글 수
- 댓글 수 많은 순으로

핵심 3 가지를 넣음: 테이블 구조 / 관계 / 요구사항. 이 정도 컨텍스트를 주면 AI 가 거의 정확한 SQL 을 짜줍니다.

직접 ChatGPT/Claude 에 던져보세요. 같은 요구사항을 컨텍스트 없이 던질 때와 비교해보면 — 차이가 보입니다.

다 풀었다면 — AI 검증 루틴까지

✓ 4-1 훈련 완료 기준

필요한 테이블 그리기 · 관계의 체인 따라가기 · AI 에게 구조 전달하기 — 세 문제를 직접 그려봤다면 모델링 사고의 출발선에 선 겁니다. 마지막 한 걸음 — 본인 답을 AI 선생님에게 검증받는 것까지 해야 진짜 끝입니다.

머릿속에 테이블과 화살표가 그려지기 시작했다면 준비 완료 — 다음 강의에서 그 화살표의 정체, 부모와 자식 테이블을 제대로 파헤칩니다.

NEXT LESSON4-2 부모 / 자식 테이블 ⭐

모든 관계의 출발점 — 누가 부모이고 누가 자식인지 한눈에 구분하는 법을 배웁니다.

GO ▸ 다음 강의 시작하기