moongose查询WHERE和OR NOT

时间:2017-02-27 14:04:24

标签: javascript node.js mongodb mongoose

我无法整理有效的查询或至少查询我用mongoose获取正确的数据。在SQL中它就像这样

SELECT * FROM table WHERE id = 123 AND deleted_by != 1 OR deleted_by != -1;

2 个答案:

答案 0 :(得分:2)

您可以使用$or$ne的组合,如下所示

db.collection.find({ id: 123, $or: [{ deleted_by: { $ne: 1 } }, { deleted_by: { $ne: -1 } }]});

$nor

db.collection.find({ id: 123, $nor: [{ deleted_by: 1 }, { deleted_by: -1 }]});

答案 1 :(得分:0)

我最终解决了这个问题。

conversationModel.find({
   user_to_user_from: 123,
   deleted_by: {
       $nin: [1, '-1'],
   }
});