嵌入式mongoDB打印/查询问题

时间:2019-07-07 22:33:16

标签: mongodb-query

我正在尝试执行一个查询,以打印出所有在“ initialSelected”中等于2的“ x”值

使用x和y的不同值的值看起来像这样

    "initialSelected" : {
            "x" : 2,
            "y" : 2
    }

我可以使用

打印项目

db.main.find({“ initialSelected”:{“ x”:2,“ y”:2}})。pretty()

但是当我删除“ y”时.. db.main.find({“ initialSelected”:{“ x”:2}})。pretty()

什么都不会打印

我考虑过让y的所有值的y值分别为$ lt和$ gt 0,因为它似乎需要解决,但是下面的简单查询也不会显示任何内容。

db.main.find({“ initialSelected”:{“ x”:2,“ y”:{$ eq:2}}})。count()

我想念什么?我是新来的。谢谢!

1 个答案:

答案 0 :(得分:0)

db.main.find({ "initialSelected" : { "x" : 2 } })的查询将仅匹配initialSelected字段与{ x: 2 }精确匹配的文档(即没有y字段)。

您需要使用dot notation来仅匹配x字段:

db.main.find({ "initialSelected.x" : 2 })