首页 > 解决方案 > Sequelize 查询 Where 不相等和其他条件

问题描述

我想让查询 id 在 Sequelize 中不相等。

这是我当前的续集查询:

return db.Area.findAll({
    where: { id: { $ne: Id },
    slug: conditions.slug }
})

生成的 SQL 查询:

*SELECT `id`, `title`, `name`, `titleL1`, `nameL1`, `level`, `slug`, `createdAt`, `updatedAt`, `ParentId` FROM `Areas` AS `Area` 
WHERE `Area`.`id` = '[object Object]' AND `Area`.`slug` = 'Nakyal-1';*

这部分不正确:

WHERE `Area`.`id` = '[object Object]' 

我究竟做错了什么?

标签: node.jssequelize.js

解决方案


我不知道是不是你的情况,但我在使用 sequelize 中的快捷方式 '$' 运算符时遇到了问题。您可以尝试这种方法:

const Op = require('sequelize').Op;
***
where: { id: { [Op.ne]: Id }... }

推荐阅读