【问题标题】:Find records in MongoDB that does NOT match a contition [duplicate]在 MongoDB 中查找与条件不匹配的记录 [重复]
【发布时间】:2016-06-02 18:26:59
【问题描述】:

我需要将条件传递给find 方法。但是使用比较运算符!=。在 MongoDB 中可以吗?我在docs 运算符中看到了ANDOR&lt&gt,但是否定运算符。你知道如何获取所有记录吗,recordType 不等于Message

collection.find({'recordType' : 'Message'}).toArray(function(err, results) {
    // <-- need NOT EQUAL OPERATOR
    });

【问题讨论】:

    标签: node.js mongodb


    【解决方案1】:

    $ne 是解决方案。

    语法:{field: {$ne: value} }

    $ne选择字段值为not equal (i.e. !=)的文档为指定值。这包括不包含该字段的文档。

    collection.find({'recordType' : {'$ne' : 'Message'}}).toArray(function(err, results) 
    {
        console.log(results);
    });
    

    请参考doc了解如何使用它。

    【讨论】:

    • $ne,不是'$ne'
    • @Clijsters 它也适用于'$ne'。
    • 有趣。检查Book,说你是对的,但online manual 只提供没有环绕标记的运算符。旧版本对此有任何了解或无关紧要吗?
    • 您可以尝试运行带引号和不带引号的查询。它只会给出相同的结果。我从来没有对此进行过任何类型的研究,所以我不知道使用和不使用quotes 有什么区别。如果有人知道,我会很高兴知道。
    猜你喜欢
    • 2015-03-08
    • 2015-01-15
    • 1970-01-01
    • 1970-01-01
    • 2021-11-21
    • 2016-11-13
    • 1970-01-01
    • 1970-01-01
    • 2018-04-08
    相关资源
    最近更新 更多