You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Prisma如何过滤存在可选关联关系的User记录?

问题原因

  • 你的User和Quiz是一对一可选关联关系,some过滤算子仅适用于一对多数组类型的关联字段(比如User模型上定义quizzes Quiz[]的场景),所以会触发类型错误。
  • 你最开始写的quiz: true是Prisma早期版本的语法,在新版本中已经废弃不再支持。

正确实现代码

要筛选出已关联Quiz的用户,直接用一对一关联专属的isNot算子判断关联不为空即可:

const users = await p.user.findMany({
  where: {
    quiz: {
      isNot: null
    }
  }
})

如果你需要同时对关联的Quiz加过滤条件,直接在is算子内传入匹配规则即可,比如筛选关联的Quiz是已经完成的用户:

const users = await p.user.findMany({
  where: {
    quiz: {
      is: {
        finished: true
      }
    }
  }
})

内容的提问来源于stack exchange,提问作者Henry

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.03 16:24:02