【问题标题】:How to pass mongodb 'or' & 'and' query in node.js如何在 node.js 中传递 mongodb 'or' & 'and' 查询
【发布时间】:2017-10-06 20:48:49
【问题描述】:

如何在 node.js 中传递 mongodb 'or' & 'and' 查询

如果在 mongodb shell 中执行下面的查询,它工作正常

> db.data.find({$or:[{"privacy":1},{$and:[{"privacy":3},{"userId":"59b8b9fbb8c53b252be10562"}]}]}).pretty();

但现在在 node.js 中,我想将相同的查询作为参数传递给模型。到目前为止我已经尝试过传递这个参数是

const query = {$or: [ {"privacy": 1}, $and: [{"privacy": 3}, {"userId": "59b8b9fbb8c53b252be10562"}] ] };

它会抛出一个错误:"Error: unknown operator: $or"

【问题讨论】:

  • 也试过但还是不行

标签: node.js mongodb


【解决方案1】:

我想你忘了看这里 试试这个方法

 const query = {$or: [ {"privacy": 1}, {$and: [{"privacy": 3}, {"userId": "59b8b9fbb8c53b252be10562"}]} ] };

或者条件必须是这样的

{ $or: [ { <expression1> }, { <expression2> }, ... , { <expressionN> } ] }

【讨论】:

  • 我试过你给的。仍然错误:"Error: unknown operator: $or",
【解决方案2】:

我通过在模型中发布查询来解决它 我在控制器中提到的键并将该键传递给模型,然后在模型中为此编写查询。

【讨论】:

    猜你喜欢
    • 2011-05-27
    • 1970-01-01
    • 2018-12-08
    • 1970-01-01
    • 1970-01-01
    • 2018-10-24
    • 1970-01-01
    • 1970-01-01
    • 2017-09-26
    相关资源
    最近更新 更多