使用嵌套对象表示法查询 mongoDB 时遇到问题:
db.messages.find( { headers : { From: "reservations@marriott.com" } } ).count()
0
db.messages.find( { 'headers.From': "reservations@marriott.com" } ).count()
5
我看不出我做错了什么。我期望嵌套对象表示法返回与点表示法查询相同的结果。我哪里错了?
最佳答案
db.messages.find( { headers : { From: "reservations@marriott.com"} } )
此查询将查询 headers
等于 { From: ... }
的文档,即不包含其他字段。
db.messages.find( { 'headers.From': "reservations@marriott.com"} )
这仅查看 headers.From
字段,不受 headers
中包含或缺少的其他字段的影响。
关于mongodb - 如何查询嵌套对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45604150/