Skip to content

2/3주차 - 하갱/김하경 워크북 과제 제출#4

Merged
munwalk merged 2 commits intoUMC-KWU:hagyeongfrom
Hagyeong13:main
Mar 31, 2026
Merged

2/3주차 - 하갱/김하경 워크북 과제 제출#4
munwalk merged 2 commits intoUMC-KWU:hagyeongfrom
Hagyeong13:main

Conversation

@Hagyeong13
Copy link
Copy Markdown
Collaborator

@Hagyeong13 Hagyeong13 commented Mar 25, 2026

✅ 2/3주차 워크북 완료 🎉

워크북을 완료한 챌린저분들, 수고 많으셨습니다!
이곳에 학습 진행 중 트러블슈팅(문제 해결 경험), 커밋별 설명, 그리고 소감을 자유롭게 남겨주세요.
서로의 경험을 공유하며 성장해봐요! 🚀


🛠️ 트러블슈팅 (Troubleshooting)

- 학습 중 겪었던 문제와 해결 과정을 기록해주세요!
- 다른 챌린저들에게 도움을 줄 수 있도록 해결 방법도 함께 남겨주시면 좋아요.
- 아래에 본인이 수정해서 작성하시면 됩니다. 없으면 안적어주셔도 됩니다 ~ 

문제

홈 화면 쿼리에서 진행 중, 진행 완료 말고 아예 진행 안한 것들을 받아와야 하는데 JOIN을 사용하니 없는 것들을 받아올 수 없었음

원인 분석

INNER JOIN 사용

해결 방법

LEFT JOIN을 사용해서 mission을 기준으로 user_mission에 매칭되는 row가 없으면 NULL로 채워 IS NULL로 판단

@Hagyeong13 Hagyeong13 changed the title 2주차 - 하갱/김하경 워크북 과제 제출 2/3주차 - 하갱/김하경 워크북 과제 제출 Mar 30, 2026
Copy link
Copy Markdown
Collaborator

@munwalk munwalk left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

2주차 과제 수고하셨습니다!
단계별 쿼리 구현 과정이 정말 체계적입니다! 기본 SELECT부터 시작해서 JOIN 추가 → 필요한 컬럼만 선택 → WHERE 조건 → 페이징까지 발전시켜가는 과정이 명확하게 보여서 학습 흔적이 훌륭합니다. 특히 홈 화면 쿼리에서 처음에는 JOIN user_mission으로 했다가 진행 안한 미션도 보여줘야 해서 LEFT JOIN으로 수정하신 과정까지 기록하신 점이 인상적이네요!
Cursor based 페이징 구현도 정확합니다! CONCAT(LPAD(UNIX_TIMESTAMP(created_at), 20, '0'), LPAD(user_mission_id, 10, '0'))로 created_at + id 조합 커서를 만드셨고, 서브쿼리로 커서값을 비교해서 페이징 처리하신 점이 좋습니다. 또, 리뷰 조회 쿼리에서 DATE_FORMAT(created_at, '%Y.%m.%d')로 포맷팅하신 것도 훌륭합니다!
수고하셨습니다!

@munwalk munwalk merged commit ffad157 into UMC-KWU:hagyeong Mar 31, 2026
3 checks passed
Copy link
Copy Markdown
Collaborator

@munwalk munwalk left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

3주차 과제 수고하셨습니다!
API 설계가 체계적입니다! GET /home/progress, GET /home/todo-missions로 홈 화면 기능을 명확히 구분하셨고, GET /missions?status=진행중으로 Query String을 활용해서 진행중/완료를 필터링하신 점이 좋습니다. PATCH /missions/{missionId}/success도 RESTful하게 설계하셨네요!
Authorization 헤더를 거의 모든 API에 일관되게 적용하신 점, Query String으로 regionId와 status를 받아서 필터링하신 점도 훌륭합니다. Response Body까지 정의해서 어떤 데이터가 반환되는지 명확하게 작성하셨고, API 목록을 표로 깔끔하게 정리하신 점도 좋습니다!
다만, 미션 성공 API의 Request Body에 ownerCode가 있는데 이게 무엇인지 설명이 없어서 조금 헷갈립니다. 그리고 Response Body 예시가 있으면 프론트엔드 입장에서 더 명확하게 이해할 수 있을 것 같아요!
수고하셨습니다!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants