gpt4 book ai didi

javascript - 在多对多连接的位置 Sequelize

转载 作者:行者123 更新时间:2023-11-29 11:47:22 25 4
gpt4 key购买 nike

我希望有人能帮助我。我正在使用 express.js 的 Sequelize ORM,并且我在 2 个表之间有一个有效的多对多关系。

为了简化我的查询,假设我的表是 Users、Books 和 UserBooks,其中 UserBooks 有 UserId、BookId 和一个附加列(假设它是 NoOfTimesRead)。

我想做的是:

user.getBooks({
where: {
"userBooks.NoOfTimesRead": 0
}
});

如果我输入:

user.getBooks();

这有效并返回所有书籍,我只是无法弄清楚如何通过连接表上的附加列来查询它。

我希望这是有道理的,

感谢您的关注!

最佳答案

With Belongs-To-Many you can query based on through relation and select specific attributes. For example using findAll with through

User.findAll({
include: [{
model: Project,
through: {
attributes: ['createdAt', 'startedAt', 'finishedAt']
where: {completed: true}
}
}]
});

基本上您可以使用through 选项和include 您链接的关系。更多可以找到here

关于javascript - 在多对多连接的位置 Sequelize ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35183948/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com