我该怎么做,这只是我遇到麻烦的最后一行?对话显然属于请求。
SELECT * FROM Dialogues AS Dialogue,Requests AS Request
WHERE Dialogue.RequestId=Request.id
AND Dialogue.updatedAt < Request.updatedAt
我实际上需要进一步限制请求仅限于那些反对具有universalId = VALUE和Dialogue.executed&gt;的对话的人。 0, 我当然可以轻松做到,
但是如何进行以下操作?$ gt:代替“Dialogue.updatedAt”后会发生什么?
myValue=something;
Dialogue.findAll({
include : {
model : Request,
where:{updatedAt:{$gt:"Dialogue.updatedAt"}}
include: {
model:Dialogue,
where:{
PartyId:myValue,
executed:{$gt:0}
}
}
}
}
答案 0 :(得分:1)
您也可以尝试-
const Sequelize = require('sequelize');
const op = Sequelize.Op;
myValue=something;
Dialogue.findAll({
include : {
model : Request,
where:{updatedAt:{$gt: {[op.col]: 'Dialogue.updatedAt'}}}
include: {
model:Dialogue,
where:{
PartyId:myValue,
executed:{$gt:0}
}
}
}
}
答案 1 :(得分:0)
如果你正确阅读了doco,你会发现$ col运算符,所以你只需要去
sourceField:{$西:&#39; otherTable.otherfield&#39;}