【发布时间】:2021-10-03 09:05:25
【问题描述】:
model Player {
id String @id
name String @unique
game Game[]
}
model Game {
id String @id
isWin Boolean
playerId String
player Player @relation(fields: [playerId], references: [id])
}
我想找到获胜次数最多的玩家。我将如何使用prisma 做到这一点?如果没有 prisma “本机”方式来做到这一点,那么使用原始 SQL 执行此操作的最有效方式是什么?
我能想到的最好的是:
prisma.player.findMany({
include: {
game: {
where: {
isWin: true,
},
},
},
})
但它有一个巨大的缺点,您需要在 Node 中手动过滤和排序结果,同时还要将所有结果存储在内存中。
【问题讨论】: