簡體   English   中英

將帶有子查詢的 SQL 查詢轉換為 Sequelize 查詢

[英]Convert SQL query with subquery to Sequelize query

我是續集的新手,我想轉換以下SQL SQL query

select distinct user_id
from accounts_users
where user_id not in (
    select user_id
    from accounts_users
    where account_id = 2)

對於 Sequelize 查詢,但我找不到使子查詢正確的方法。

我的嘗試不起作用:

const existingUserIdsWithAccountUser = await AccountUserModel.findAll({
      raw: true,
      where: {
        user_id: {
          [Sequelize.Op.and]: {
            [Sequelize.Op.notIn]: Sequelize.literal(`SELECT user_id FROM 'Accounts_Users' WHERE account_id = ${account_id}`),
            [Sequelize.Op.in]: existingUsersIds
          }
        }
      },
      attributes: [Sequelize.fn('DISTINCT', Sequelize.col('user_id')), 'user_id']
    }).map(user => user.user_id);

該查詢相當於:

select distinct user_id
from accounts_users
where account_id <> 2

如果我遺漏了什么,請告訴我。

暫無
暫無

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

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