본문 바로가기
Q&A해결2026년 7월 28일1분 읽기

Prisma에서 목록 하나 뿌리는데 쿼리가 수십 개씩 날아가요 (N+1)

o
orm_jiwoo
조회 763댓글 1

게시글 목록 20개에 작성자 정보랑 댓글 개수를 같이 뿌리는데, Prisma 쿼리 로그를 켜보니 요청 한 번에 SELECT가 40개 넘게 나갑니다. 리스트 하나 그리는데 이게 맞나 싶어서요.

코드는 이렇게 짰어요.

const posts = await prisma.post.findMany({ take: 20 })
for (const p of posts) {
  p.author = await prisma.user.findUnique({ where: { id: p.authorId } })
  p.commentCount = await prisma.comment.count({ where: { postId: p.id } })
}

동작은 하는데 목록이 길어지면 눈에 띄게 느려요. 반복문 안에서 쿼리를 도는 게 문제인 건 어렴풋이 아는데, Prisma에서는 이걸 어떻게 한 번에 가져오나요?

댓글 0

아직 댓글이 없습니다.
Ctrl+Enter로 등록