将 OR 与 null 进行序列化

Rof*_*fin 2 sql node.js sequelize.js

我正在尝试使用 Sequelize 生成(半)复杂的条件。

我试图生成的 SQL 是:

SELECT * FROM Tasks
WHERE completedDate IS NULL OR completedDate < CURRENT_TIMESTAMP;
Run Code Online (Sandbox Code Playgroud)

所以我使用 Sequelize 命令:

Task.findAll({
  where: {
    completedDate: null
  },
  $or: [
    {
      completedDate: {
        $lt: new Date()
      }
    }
  ]
});
Run Code Online (Sandbox Code Playgroud)

但是它返回 0 行。难道我做错了什么?

sfu*_*qua 5

我相信 Sequelize$or要求两个条件都在同一个块中。尝试这样的事情:

Task.findAll({
    completedDate: {
       $or: {
            $eq: null,
            $lt: new Date()
       }
    }
});
Run Code Online (Sandbox Code Playgroud)