在上面的屏幕截图中,您可以看到我在我的mongo数据库中的 tests 集合中打开了一个名为(1)ObjectId(572b ... ec7a)的文档。 (测试集合中包含这样的文档)在屏幕截图的底部附近,您可以看到名为名称的字段是类型字符串,其值为 EditMessagesSettings 即可。我想查询测试集合并返回包含特定名称的任何文档(例如,在这种情况下为 EditMessagesSettings )。我怎么能这样做?
以下是我尝试过的一些没有成功的查询,收到回复消息,例如 4ms 中提取的0条记录。
编辑:如果是任何星座,如果我输入 db.getCollection('tests')。find({Obj}),我会得到 ObjectId的自动完成选项(
答案 0 :(得分:3)
我可以看到问题出在哪里。您需要使用两个下划线而不是一个。请参阅以下示例:
_value与正确的__value。
所以你的查询应该是这样的:
db.getCollection('tests').find({"Data.__value.Name":"EditMessagesSettings"})
答案 1 :(得分:0)
尝试
db.getCollection('tests').find({"Data._value.Name":"EditMessagesSettings"})