如何使“中”与“子查询”的续集?

时间:2019-08-11 08:06:39

标签: node.js sequelize.js

我有一个sql:

SELECT * FROM user WHERE uid in (SELECT id FROM umi where pid=10)

如何续编?

我知道代码不正确,这是我的代码:

db.user.findAll({
where:{uid:[0,1,2]}
)}

我不知道如何替换[0,1,2]

我应该查询两次吗?一种是获取数组然后查询用户?

1 个答案:

答案 0 :(得分:1)

您可以使用.libPaths()来做到这一点:

sequelize.literal

如果您设置了适当的关联,那么这也将起作用:

db.user.findAll({
    where:{
        uid: {
            $in : [sequelize.literal('SELECT id FROM umi where pid=10'))]
        }
    }
)}