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

4-2 연습 문제 — 부모 / 자식 ⭐
어떤 ERD 를 봐도 자동으로 보이게

강의 메인 메시지 — "부모-자식 관계만 알면, AI 가 모든 SQL 을 만들어줍니다" — 의 실습입니다. 눈으로 읽고 끝내면 남지 않습니다. 직접 손으로 부모-자식 쌍을 식별해 보세요. 이 연습이 끝나면 어떤 ERD 를 봐도 부모-자식이 자동으로 보이게 됩니다.

문제3문제 (도전 1 포함)권장 소요10~15분재료shop 5 테이블 + 새 ERD 2개준비물4-2 강의 수강 완료

섹션 4 에서의 위치

4-1 관계의 구조

완료 ✓

4-2 부모 / 자식 ⭐

강의 완료 ✓

4-2 연습 문제

지금 여기

4-3 ~ 4-5

관계 유형 · FK · ERD

4-8 모델링 종합 실습 ⭐

섹션 4 마일스톤

AI 과외 선생님 활용법 — 가장 중요한 학습 습관

2-4에서 만든 AI 과외 선생님 세션을 그대로 쓰세요. 막히면 정답이 아니라 힌트만 요청하고, 풀어본 뒤에는 본인 답을 AI 에 던지며 “부모-자식 식별이 맞는지 검증해줘” 라고 물어보세요. 이번 문제들은 개념 식별 훈련이라 — AI 의 검증 피드백이 특히 잘 듣습니다.

문제 1. shop ERD — 모든 부모-자식 쌍 식별

shop 의 5 테이블 (members, categories, products, orders, order_items) 에서 — 모든 부모-자식 쌍 을 나열하세요.

기대 결과: 4 쌍

정답 보기
#부모자식FK
1membersordersorders.member_id
2ordersorder_itemsorder_items.order_id
3productsorder_itemsorder_items.product_id
4categoriesproductsproducts.category_id

관찰: 5 테이블 = 4 부모-자식 쌍. ordersorder_items 는 둘 다 다른 역할을 동시에 합니다 (ordersmembers 의 자식이자 order_items 의 부모).

문제 2. 새 ERD 에서 부모-자식 식별

다음 학원 등록 시스템 ERD 를 보고 — 부모-자식 쌍 을 식별하세요.

기대 결과: 3 쌍

정답 보기
#부모자식FK
1teacherslectureslectures.teacher_id
2studentsenrollmentsenrollments.student_id
3lecturesenrollmentsenrollments.lecture_id

관찰: enrollments 는 두 부모 (students, lectures) 의 자식 — 이게 N:M 을 풀어주는 중간 테이블 의 모습입니다. (자세한 건 4-3 에서)

문제 3 (도전). AI 에게 부모-자식 컨텍스트 주는 프롬프트 작성

당신의 회사 DB 에 다음 4 테이블이 있다고 가정합시다.

  • companies (회사: company_id PK, name)
  • employees (직원: employee_id PK, name, company_id FK)
  • projects (프로젝트: project_id PK, title, company_id FK)
  • assignments (배정: employee_id FK, project_id FK, role)

AI 에게 “각 프로젝트에 배정된 직원 수와 회사명을 같이” SQL 을 요청하는 프롬프트를 — 부모-자식 관계를 명시해서 작성해보세요.

힌트

4-2 본문의 “좋은 프롬프트” 예시 참고. 부모-자식 관계 + 요구사항.

모범 프롬프트 예시
다음 MySQL DB 에서 SQL 을 짜줘.

[부모-자식 관계]
- companies (회사, PK=company_id)
  ← employees (직원, FK=company_id)
  ← projects (프로젝트, FK=company_id)
- projects (프로젝트, PK=project_id)
  ← assignments (배정, FK=project_id)
- employees (직원, PK=employee_id)
  ← assignments (배정, FK=employee_id)

[테이블 컬럼]
- companies: company_id, name
- employees: employee_id, name, company_id
- projects: project_id, title, company_id
- assignments: employee_id, project_id, role

[요구사항]
각 프로젝트에 배정된 직원 수와 그 프로젝트가 속한 회사명을 같이 출력.
출력 컬럼: 회사명, 프로젝트 제목, 직원 수.
직원 많은 순으로 정렬.

핵심: 부모-자식 관계를 명시적 화살표 로 보여줌. AI 가 JOIN ON 조건을 자동으로 맞춥니다.

이걸 그대로 ChatGPT/Claude 에 던지면 거의 정확한 SQL 이 나옵니다. 검증도 1초 — “행 수가 projects 수와 같아야 함” 만 확인.

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

✓ 4-2 훈련 완료 기준

PK 가진 쪽이 부모, FK 로 가리키는 쪽이 자식. 세 문제를 직접 식별했다면 — 강의 메인 메시지의 실습이 끝났습니다. 마지막 한 걸음, 본인 답을 AI 선생님에게 “부모-자식 식별이 맞는지 검증해줘” 라고 던지는 것까지 해야 진짜 끝입니다.

부모-자식이 보이기 시작했다면 다음 단계로 갈 준비 완료 — 이제 그 관계가 1:1 인지, 1:N 인지, N:M 인지 구분하는 법을 배웁니다.

NEXT LESSON4-3 1:1 / 1:N / N:M

문제 2 에서 만난 중간 테이블 — N:M 을 푸는 정석을 여기서 배웁니다.

GO ▸ 다음 강의 시작하기