使用子select装订JS自定义查询

我是ORM的新手,我不知道如何使用ORM来做到这一点。 考虑到我有5个表格:

标签,拍卖,用户,user_tag和auction_tag

我正在使用SequelizeJS,我怎样才能得到这样的查询?

select A.id, A.title, A.content, A.createdAt, U.id, U.picture, U.name from Auction A, User U, User U2 where A.userId = U.id and U2.id = x and exists (select AT.id from Auction_Tag AT where AT.auction = A.id and AT.tag in ( select T.id from Tag T, User_Tag UT where U2.id = UT.user and UT.tag = T.id ) ); 

有任何想法吗? 感谢你们

使用orm是假设从查询语言本身抽象你。 如果你愿意做一个嵌套的请求,你应该使用你必须传递给findAll方法的options对象的“where”属性。 我无法从您提供的信息中推断出您的结构,所以我正在用我最好的猜测(正在拍卖您的拍卖模型和用户ID将其与用户相关联)进行示例:

 Auction.findAll({where: { userid: 8 }}).done(callback); 

但是,如果你正在寻找一个相关的实体参数,比如User.name,那就去做吧:

 Auction.findAll({where: { 'User.name': 'John' }}).done(callback); 

如果你看到自己使用SQL查询,也许你应该考虑不使用ORM。