我有一个模型,其中有 3 个实体:
User
Project
Contributor
一个项目有一个所有者(用户)和多个贡献者(用户)。在我的仪表板中,我想列出用户的项目,即用户是所有者或贡献者的所有项目。
使用 Project.findAll({where: [owner: user]})
查找拥有的项目很简单。如何修改它以找出用户也是贡献者的项目?这将(在数据库查询中)使用 EXISTS 子句转换为子查询。
最佳答案
一般情况下,您可以在 where
中使用 exists
子句,如下所示:
Project.findAll({
where: {
$and:[sequelize.literal('exists (select 1 from "someTable" where ...)']
}
})
关于node.js - 如何在 sequelize 中构建 EXISTS 子句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30093481/