【问题标题】:MongoDB: "Unsupported projection option: pop: { $gt: 0.0 }" (debugging)MongoDB:“不支持的投影选项:pop: { $gt: 0.0 }”(调试)
【发布时间】:2020-05-23 19:13:42
【问题描述】:

我正在尝试运行此查询:

db.zips.find({"state":"GA"}, {"pop":{$gt:0}}).sort({pop:1}).limit(5)

但我不断收到此错误:

"errmsg" : "Unsupported projection option: pop: { $gt: 0.0 }"

当我运行这个查询时,它运行良好:

db.zips.find({"state":"GA"}).sort({pop:1}).limit(5)

我正在尝试查找 "state" = "GA" 和 "pop" 大于 0 的字段,并将其限制为 5 个结果并按升序对它们进行排序。

当我将 {"pop":{$gt:0}} 部分作为 find 函数的第一个参数时,它会运行,但它忽略了我只想要等于“GA”的状态这一事实。我不知道如何解决这个问题,有谁知道出了什么问题?

【问题讨论】:

  • 试试db.zips.find({"state":"GA", "pop":{$gt:0}}).sort({pop:1}).limit(5)
  • @Veeram 成功了,谢谢!

标签: javascript node.js mongodb


【解决方案1】:

Mongodb 的find 函数有两个参数,查询和投影。您正在触发的查询有两个对象,第二个被视为投影标准。

您的query 应该将所有条件保存在单个对象中。

db.zips.find({
               "state":"GA", 
               "pop":{$gt:0}
            })
       .sort({pop:1})
       .limit(5)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-09-21
    • 2020-12-01
    • 1970-01-01
    • 2019-09-02
    • 2016-12-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多