데이터 접근
규칙 03은 최소 요구사항입니다: N+1 없음, 핫 경로에서 SELECT * 없음, 인덱스 기반 쿼리, 큰 목록은 페이지네이션 처리. 이 스킬은 ORM이나 루프가 라운드 트립을 숨길 때 해당 규칙이 어떻게 실패하는지 다룹니다.
컬렉션에서 관계를 로드하거나, 매핑을 eager로 설정하거나, 일대다 관계를 페이지네이션된 목록에 조인하기 전에 references/bad-vs-good.md를 읽으세요.
완료 조건
- N개의 부모 목록이 동일한 관계에 대해 N개의 쿼리를 발생시키지 않습니다.
- 쿼리 로그나 트레이스가 행당 하나가 아닌 고정된 수의 명령문(1 또는 2, 또는 1 + N/배치)을 보여줍니다.
- 부모 페이지가 요청한 부모 수를 반환하며, 조인된 행의 페이지를 반환하지 않습니다.