簡體   English   中英

Sequelize在多對多加入的地方

[英]Sequelize where on many-to-many join

我希望有人可以幫助我。 我正在使用Sequelize ORM for express.js,我在2個表之間有一個多對多的關系。

為了簡化我的查詢,我們可以假裝我的表是UserBook,UserBook和UserId,BookId和另一列(讓我們說它的NoOfTimesRead)是User,Books和UserBooks。

我想做的是:

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

如果我輸入:

user.getBooks();

這工作並返回所有書籍,我只是無法弄清楚如何通過連接表上的附加列進行查詢。

我希望這是有道理的,

謝謝參觀!

通過Belongs-To-Many,您可以根據關系進行查詢並選擇特定屬性。 例如,使用findAll with through

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

基本上,您可以使用through選項並include您鏈接的關系。 更多信息可以在這里找到

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM