如何从mongodb中选择一个字段不等于某个值的所有文档

时间:2015-01-29 02:05:41

标签: javascript node.js mongodb meteor database

我希望选择所有字段' author'不等于我的名为Posts的mongodb表中的某个用户名。

到目前为止我试过

Posts.find( { author: { $not: 'username' } } );

没有用,它返回了所有内容

任何想法?

1 个答案:

答案 0 :(得分:4)

如果输入是字符串,请使用$ne运算符。

Posts.find( { author: { $ne: 'username' } } );

$not运算符将expressionregex作为输入,并在表达式的情况下对输出执行逻辑运算。

  

$不对指定的操作执行逻辑NOT操作   <operator-expression>并选择与之不匹配的文档   <operator-expression>。这包括不包含的文档   字段。

Syntax: { field: { $not: { <operator-expression> } } }

您可以通过以下方式将regex传递给$not运营商:

var reg = new RegExp('username');
Posts.find( { author: { $not: reg } } );