最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

如何使用节点中的Sequelize使用Datetime编写WHERE子句

运维笔记admin12浏览0评论

如何使用节点中的Sequelize使用Datetime编写WHERE子句

如何使用节点中的Sequelize使用Datetime编写WHERE子句

我正在尝试在Sequelize语法中写下这个where子句:

SELECT * FROM `artist` WHERE `deleted_at` = null OR `deleted_at` > now();

我用几种方式续集了where子句,包括用[sequelize.Op.or]替换or

where: {
  deleted_at: {
    [sequelize.Op.or]: [null, { [sequelize.Op.gt]: (new Date()) }]
}

但我必须在我的语法中离开,因为我的输出显示它正在运行此查询:

SELECT `id`, `name`, `created_at`, `created_by`, `deleted_at`, `deleted_by` FROM `artist` AS `artist` WHERE `artist`.`deleted_at` = '2017-12-22 00:00:00' LIMIT 1;

时间错了(应该显示下午晚些时候,而不是00:00:00),它不应该显示等号,它甚至不提空。我不知道文档中的语法是什么。我的头靠在墙上。

回答如下:

你能试试吗?

  where: {
            [Op.or]: [{deleted_at: null}, {deleted_at:  { [sequelize.Op.gt]: (new Date()) }}]
        }

我把它放在答案部分格式:)

发布评论

评论列表(0)

  1. 暂无评论