[英]And not working in mongodb
我有一个名为学生的集合
{
"_id" : ObjectId("5693b549c4fd0e0bf4782d73"),
"nameIdentity" : [
{
"name" : "a"
},
{
"name" : "b"
}
]
},
{
"_id" : ObjectId("5693b549c4fd0e0bf4782d74"),
"nameIdentity" : [
{
"name" : "a"
}
]
},
{
"_id" : ObjectId("5693b549c4fd0e0bf4782d75"),
"nameIdentity" : [
{
"name" : "a"
},
{
"name" : "b"
}
]
},
{
"_id" : ObjectId("5693b549c4fd0e0bf4782d76"),
"nameIdentity" : [
{
"name" : "b"
}
]
}
我试图使用'和'查询,但它给了我一些不同的输出。
当我查询所有nameIdentities只有名称“a” db.student.find({"nameIdentity.name":"a"})
我希望输出为1,因为我得到3.再次当我查询对于同时具有a和b的名称db.student.find({"nameIdentity.name":"a"},{"nameIdentity.sourceReferenceId.sourceName":"b"})
我期待输出为2,但我得到4谁能告诉我哪里出错了?
用这个。
db.student.find({"nameIdentity.name":"a","nameIdentity": { $size: 1 }})
在您的查询db.student.find({"nameIdentity.name":"a"})
您正在搜索nameIdentity不仅是“a”的数据。 在你的第二个查询中使用像db.student.find({"nameIdentity.name":"a","nameIdentity.name":"b"})
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.