Select fields[Prisma]

SnowCat·2023년 5월 18일
0

Prisma

목록 보기
4/10
post-thumbnail
post-custom-banner

모든 필드 가져오기

  • 아무런 옵션을 주지 않은 경우 기본적으로 모든 필드값을 반환함
const getUser: User | null = await prisma.user.findUnique({
  where: {
    id: 22,
  },
})

/*
{
  id: 22,
  name: "Alice",
  email: "alice@prisma.io",
  profileViews: 0,
  role: "ADMIN",
  coinflips: [true, false],
}
*/

특정 필드를 선택해 가져오기

  • 옵션으로 select를 주면 특정한 필드 값만을 가져올 수 있음
const getUser: object | null = await prisma.user.findUnique({
  where: {
    id: 22,
  },
  select: {
    email: true,
    name: true,
  },
})

/*
{
  name: "Alice",
  email: "alice@prisma.io",
}
*/

relation field 가져오기

  • select를 중첩으로 사용하거나, include 옵션 내부에 select를 사용하면 됨
const users = await prisma.user.findMany({
  select: {
    name: true,
    posts: {
      select: {
        title: true,
      },
    },
  },
})

/*
{
  name: "Alice",
  email: "alice@prisma.io",
}
*/

const users = await prisma.user.findMany({
  // user의 모든 필드를 가져올 때 사용 
  include: {
    posts: {
      select: {
        title: true,
      },
    },
  },
})

/*
{
  "id": 9
  "name": "Sabelle",
  "email": "sabelle@prisma.io",
  "profileViews": 90,
  "role": "USER",
  "profile": null,
  "coinflips": [],
  "posts":[
      {
         "title":"Getting started with Azure Functions"
      },
      {
         "title":"All about databases"
      }
   ]
}
*/

출처:
https://www.prisma.io/docs/concepts/components/prisma-client/select-fields

profile
냐아아아아아아아아앙
post-custom-banner

0개의 댓글